openapi: 3.0.0 info: title: Mortgage Services version: 1.5.0 servers: - url: https://settlement.stageapi.firstam.com description: Stage Environment variables: {} paths: /api/token: servers: - url: https://lvis-oauth-swagger.lvisqa.firstam.com description: THIS ENDPOINT IS FOR DEMONSTRATION PURPOSES ONLY post: tags: - OAuth Token summary: Get a Token description: "First American utilizes OAuth 2.0 authorization protocol for authentication. \n\n\ \ Please contact **LVIS.support@firstam.com** to initiate the request for the URL and the values\ \ below.\n\n \n\n `client_id ` \n\n `client_secret `\n\n `scope ` \n\n `grant_type ` \n\n To\ \ generate a token, make a call to the First American authentication URL with these values." operationId: AAuthz_GetToken requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object properties: client_id: type: string client_secret: type: string scope: type: string grant_type: type: string required: - client_id - client_secret - grant_type - scope responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/TokenResult' example: token_type: Bearer expires_in: 3599 ext_expires_in: 3599 access_token: eyJ0eXAiOiJKV1 /orders: post: security: - bearerAuth: [] tags: - Orders summary: Open an Order description: "Open Title and Escrow orders with First American. Please discuss your business objectives\ \ with First American in order to determine which service(s) to order to support your needs.\n\ \n **Note: Property address and external tracking ID has to be unique per transaction.**" operationId: OrdersPost requestBody: description: Order Request content: application/json: schema: $ref: '#/components/schemas/OrderRequest' example: appSource: Replace with FA Provided ID service: EscrowTitle parties: - legalEntity: BusinessEntity contacts: - firstName: Joe lastName: BusinessEntity contactPoints: - contactPointType: Work emailAccount: sample@firstam.com phoneNumber: '1234571425' role: Other primaryName: Sample Business Entity role: Lender - firstName: Joe lastName: REAgent contactPoints: - contactPointType: Work emailAccount: sample@firstam.com phoneNumber: '9876571425' role: SellerRealEstateAgent - firstName: Joe lastName: Seller maritalStatus: aSingleMan contactPoints: - contactPointType: Work emailAccount: sample@firstam.com phoneNumber: '7142568467' role: Seller - firstName: Joe lastName: Buyer maritalStatus: aSinglePerson contactPoints: - contactPointType: Work emailAccount: sample@firstam.com phoneNumber: '7142584685' role: BuyerBorrower - firstName: Joe lastName: CoBuyer maritalStatus: aSingleWoman contactPoints: - contactPointType: Work emailAccount: sample@firstam.com phoneNumber: '8468577142' role: CoBuyerBorrower - firstName: Joe lastName: LoanOfficer contactPoints: - contactPointType: Work emailAccount: sample@firstam.com phoneNumber: '7142571425' role: LoanOfficer - firstName: Michel lastName: LoanProcessor contactPoints: - contactPointType: Work emailAccount: sample@firstam.com phoneNumber: '7142500000' role: LoanProcessor propertyAddress: addressLine1: replace with street address cityName: Santa Ana postalCode: '92706' stateCode: CA countyName: Orange propertyType: Condominium APN: '' transactionType: SaleWithMortgage externalTrackingId: replace with a unique transaction ID officeId: replace with Office Id escrowOfficerCode: replace with Escrow Officer Code titleOfficerCode: replace with Title Officer Code loan: loanNumber: Loan12345-345 loanAmount: '1234' loanType: FHA transactionDetails: contractSignedDate: '2020-02-03T00:00:00.000Z' earnestMoneyDeposit: '234' inspectionEndDate: '2020-02-05T00:00:00.000Z' homeOwnersAssociation: 'false' closeOfEscrowDate: '2020-02-11T00:00:00.000Z' acquisitionPrice: '1290' payoffInformations: - payoffType: LenderOrderSubordinate loanNumber: '787782232' loanAmount: '70000' lienPosition: '1' liabilityType: MortgageLoan lenderName: Wells Fargo lenderPhone: '1112223333' Documents: - Name: TestDocInOrderRequest PageCount: '1' IsFinalized: 'true' FileExtension: pdf EmbeddedContent: Base64 content here responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ResourceResponse' example: ID: e54227d6-27f9-43dd-9dae-0c3c8a370ddd externalReferenceId: same value provided in request. DateTime: '2020-05-06T20:53:25' Status: 1 Message: Successful /orders/{externalTrackingId}/documents: post: summary: Upload a Document description: "Upload a document for a specific order. \n\n'AppSource' is required for the customer\ \ using the source level credentials." security: - bearerAuth: [] tags: - Orders operationId: Orders_UploadDocument parameters: - name: externalTrackingId in: path required: true description: Client provided transaction ID used when opening order. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/DocumentPayload' example: appSource: Replace with FA Provided ID name: Sample Document fileExtension: pdf embeddedContent: Base64 content here serviceType: Escrow text/json: schema: $ref: '#/components/schemas/DocumentPayload' application/xml: schema: $ref: '#/components/schemas/DocumentPayload' text/xml: schema: $ref: '#/components/schemas/DocumentPayload' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/DocumentPayload' required: true responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ResourceResponse' example: ID: e54227d6-27f9-43dd-9dae-0c3c8a370ddd externalReferenceId: same value provided in request. DateTime: '2020-05-06T20:53:25' Status: 1 Message: Successful /orders/{externalTrackingId}/messages: post: summary: Send a Message description: "Send a message to the escrow officer of the order. \n\n'AppSource' is required for\ \ the customer using the source level credentials." security: - bearerAuth: [] tags: - Orders operationId: Orders_PostMessage parameters: - name: externalTrackingId in: path required: true description: Client provided transaction ID used when opening order. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MessagePayload' text/json: schema: $ref: '#/components/schemas/MessagePayload' application/xml: schema: $ref: '#/components/schemas/MessagePayload' text/xml: schema: $ref: '#/components/schemas/MessagePayload' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MessagePayload' required: true responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ResourceResponse' example: ID: e54227d6-27f9-43dd-9dae-0c3c8a370ddd externalReferenceId: same value provided in request. DateTime: '2020-05-06T20:53:25' Status: 1 Message: Successful /orders/{externalTrackingId}/cancel: post: summary: Cancel an Order description: "Cancel an Order previously created\n\n **Note:'AppSource' is required for the customer\ \ using the source level credentials.**" security: - bearerAuth: [] tags: - Orders operationId: Orders_Cancel parameters: - name: externalTrackingId in: path required: true description: Client provided transaction ID used when opening order. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderCancelRequest' text/json: schema: $ref: '#/components/schemas/OrderCancelRequest' application/xml: schema: $ref: '#/components/schemas/OrderCancelRequest' text/xml: schema: $ref: '#/components/schemas/OrderCancelRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrderCancelRequest' required: true responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/OrderCancelResponse' example: ID: e54227d6-27f9-43dd-9dae-0c3c8a370ddd externalReferenceId: same value provided in request. DateTime: '2020-05-06T20:53:25' Status: 1 Message: Successful /offices: get: security: - bearerAuth: [] tags: - Offices summary: Find an Office operationId: FAoffices parameters: - in: query name: appSource required: true schema: type: string description: A required unique application ID provided by First American Title to identify clients. example: Source - in: query name: state required: true schema: type: string description: the specific state example: CA - in: query name: county required: true schema: type: string description: the specific county example: Orange - in: query name: transactionType required: true schema: type: string description: A required value that specifies the purpose for the transaction service request. example: SaleWithMortgage - in: query name: zip schema: type: string example: '92707' - in: query name: city schema: type: string example: Santa Ana responses: '200': description: Success content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/Offices' examples: offices: value: "[\n {\n \"officeId\": 545,\n \"companyName\": \"First American Title\ \ Company\",\n \"officeAddressLine1\": \"4 First American Way\",\n \"officeCity\"\ : \"Santa Ana\",\n \"officeState\": \"CA\",\n \"officeZipCode\": \"92702\"\n\ \ },\n {\n \"officeId\": 11065,\n \"companyName\": \"First American Title\ \ Company\",\n \"officeAddressLine1\": \"3 First American Way\",\n \"officeCity\"\ : \"Santa Ana\",\n \"officeState\": \"CA\",\n \"officeZipCode\": \"92702\"\n\ \ }\n]\n" /employees/escrowOfficers: get: security: - bearerAuth: [] tags: - Employees summary: Get Escrow Officers by Office description: Get multiple escrow officer employees by office id with First American operationId: EscrowOfficers_Get parameters: - in: query name: officeId required: true schema: type: string description: the specific office id example: '191' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Employee' example: - Code: DHTOM FirstName: Tom LastName: Dick MiddleName: Harry - Code: JSMARY FirstName: Jane LastName: Mary MiddleName: Sue /employees/titleOfficers: get: security: - bearerAuth: [] tags: - Employees summary: Get Title Officers by Office description: Get multiple title officer employees by office id with First American operationId: TitleOfficers_Get parameters: - in: query name: officeId required: true schema: type: string description: the specific office id example: '191' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Employee' example: - Code: DHTOM FirstName: Tom LastName: Dick MiddleName: Harry - Code: JSMARY FirstName: Jane LastName: Mary MiddleName: Sue /webhooks: post: security: - bearerAuth: [] tags: - Webhooks summary: Register a Webhook description: "The following events may be published during the life of an order and can be subscribed\ \ to by registering a webhook.\n\n **Notes:** \n\n Domain whitelisting required. Please contact\ \ LVIS.support@firstam.com for assistance. \n\n \n\n Event Type | Description\n -------------------\ \ |-------------\n OrderCreated | Status event indicating that the order has been created.\ \ Event will contain message detail such as file number and contacts. \n CurativeCleared \ \ | Status event indicating title clearance, will include message detail.\n DocumentDelivery   \ \ | Delivery of a document as Base64-encoded pdf.\n FundsDisbursed | Status event indicating\ \ that proceeds have been distributed to all parties, will include message detail. \n MessageAdded\ \ | Status event indicating that a message has been sent. Message container holds up to\ \ 1048576 characters.\n FundingApproved | Status event indicating that approval has been\ \ given to fund the loan, will include message detail.\n Curative Pending | Status event\ \ indicating that there are outstanding items to be cleared on Title. The status can come before\ \ or after Title is cleared.\n DisburseHold | Status event indicating that disbursement\ \ of funds has been delayed, will include message detail. \n OrderRejected | Status event\ \ indicating that an order has been rejected for failing to meet business rules.\n OrderCancelled\ \ | Status event indicating that an order has been cancelled.\n OrderClosed | Status\ \ event indicating that an order has been closed.\nTitleProductDelivered | Delivery of a requested\ \ title product, such as Title Commitment or Preliminary Report as a Base64-encoded pdf.\nFinalPolicyDelivered\ \ | Delivery of a final title product, such as Owner's Policy or Lender's Policy as a Base64-encoded\ \ pdf.\nCDDraft | Delivery of a draft Closing Disclosure as a Base64-encoded pdf.\n AppointmentScheduled   \ \ | Status event indicating that a signing has been scheduled.\n CDBalanced | Status event\ \ indicating that this is the final Closing Disclosure from First American.\n RecordingCompleted\ \ | Status event indicating that a document (example: Mortgage Deed of Trust) has been recorded.\n\ \ SigningOrdered | Status event indicating that the signing request has been received by First\ \ American.\n SigningBorrowerNotified | Status event indicating that a notary or signing agent\ \ has confirmed the signing appointment with the borrower.\n SigningCompleted | Status event\ \ indicating that the borrower has completed the signing appointment with the notary or signing\ \ agent.\n SigningFailed | Status event indicating the notary or signing agent was not able\ \ to complete the signing with the borrower on the scheduled date/ time due to an unforeseen event.\n\ \ \nThe example below shows a MessageAdded event notification. Events will be published in the\ \ format defined by the EventNotification schema described in the schemas section. The Notifications\ \ array will contain at least one Event instance with one of the above event type values in its\ \ Action field. This indicates the type of event that has occurred.\nThe Message field will contain\ \ a Message instance relevant to the event that has occurred. Once the integration partner system\ \ responds with a HTTP 200 status code, the EventNotification will be considered to have been\ \ successfully published. \n\nExample of an event notification: \n```fa-sample \n{ \n \"id\"\ : \"2daf73766c29459997d7c46bf2019af7\", \n \"retryCount\": 1, \n \"notifications\": [ \n \ \ { \n \"action\": \"MessageAdded\", \n \"externalTrackingId\": \"Client provided\ \ transaction ID used when opening order\", \n \"message\": { \n \"serviceType\"\ : \"escrowTitle\", \n \"message\": \"Sample Message Content\" \n } \n \ \ } \n ] \n} \n```\n" operationId: Webhooks_Post requestBody: description: Register a Webhook content: application/json: schema: $ref: '#/components/schemas/Webhook' example: AppSource: OpenAPI Uri: notification endpoint URL Secret: integrator's secret Description: Subscription to DocumentDelivery event IsPaused: false Filter: DocumentDelivery Headers: x-api-key: integrator's key Properties: retryCount: 2 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Webhook' example: Uri: notification endpoint URL Secret: integrator's secret Description: Subscription endpoint for DocumentDelivery published event IsPaused: false Filter: DocumentDelivery Headers: x-api-key: integrator's key Properties: retryCount: 2 put: security: - bearerAuth: [] tags: - Webhooks summary: Update a Webhook description: Update a webhook with First American operationId: Webhooks_Put requestBody: description: Webhook Request content: application/json: schema: $ref: '#/components/schemas/Webhook' example: AppSource: OpenAPI Uri: notification endpoint URL Id: c869db8136f24634bbf3ba6d92c4e8ff Secret: integrator's secret Description: Subscription to DocumentDelivery event IsPaused: false Filter: DocumentDelivery Headers: x-api-key: integrator's key Properties: retryCount: 2 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Webhook' example: Uri: notification endpoint URL Id: c869db8136f24634bbf3ba6d92c4e8ff Secret: integrator's secret Description: Subscription endpoint for DocumentDelivery published event IsPaused: false Filter: DocumentDelivery Headers: x-api-key: integrator's key Properties: retryCount: 2 get: security: - bearerAuth: [] tags: - Webhooks summary: Get all Webhooks description: Get all webhooks with First American operationId: Webhooks_GetAll parameters: - in: query name: appSource required: false schema: type: string description: the subscription group example: OpenAPI responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Webhooks' example: Uri: notification endpoint URL Id: c869db8136f24634bbf3ba6d92c4e8ff Secret: integrator's secret Description: Subscription endpoint for DocumentDelivery published event IsPaused: false Filter: DocumentDelivery Headers: x-api-key: integrator's key Properties: retryCount: 2 delete: security: - bearerAuth: [] tags: - Webhooks summary: Delete all Webhooks description: Delete all webhooks with First American operationId: Webhooks_DelAll parameters: - in: query name: appSource required: false schema: type: string description: the subscription group example: OpenAPI responses: '200': description: Success content: application/json: schema: type: string example: Success /webhooks/{id}: get: security: - bearerAuth: [] tags: - Webhooks summary: Get Webhook description: Get single webhook with First American operationId: Webhooks_Get parameters: - in: path name: id required: true schema: type: string description: the specific webhook id example: c869db8136f24634bbf3ba6d92c4e8ff - in: query name: appSource required: false schema: type: string description: the subscription group example: OpenAPI responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Webhook' example: Uri: notification endpoint URL Id: c869db8136f24634bbf3ba6d92c4e8ff Secret: testsecretccc Description: Subscription endpoint for DocumentDelivery published event IsPaused: false Filter: DocumentDelivery Headers: x-api-key: integrator's key Properties: retryCount: 2 delete: security: - bearerAuth: [] tags: - Webhooks summary: Delete Webhook description: Delete webhook with First American operationId: Webhooks_Del parameters: - in: path name: id required: true schema: type: string description: the specific webhook id example: c869db8136f24634bbf3ba6d92c4e8ff - in: query name: appSource required: false schema: type: string description: the subscription group example: OpenAPI responses: '200': description: Success content: application/json: schema: type: string example: Success /webhooks/registerWebhooks: post: security: - bearerAuth: [] tags: - Webhooks summary: Register mutiple Webhooks description: Register mutiple Webhooks with First American operationId: Webhooks_Post_Multiple requestBody: description: Webhook Request content: application/json: schema: $ref: '#/components/schemas/Webhooks' example: - AppSource: Offerpad Uri: https://pdl.com/v1/FirstAmerican/order_different Secret: integrator's secret Description: Register multiple webhook 1 IsPaused: true Filter: OrderClosed Headers: x-api-key: integrator's key Properties: retryCount: 2 - AppSource: Offerpad Uri: https://pdl.com/v1/FirstAmerican/order_different Secret: integrator's secret Description: Register multiple webhook 1 IsPaused: false Filter: FundingApproved Headers: x-api-key: integrator's key Properties: retryCount: 2 - AppSource: Offerpad Uri: https://pdl.com/v1/FirstAmerican/order_different Secret: integrator's secret Description: Register multiple webhook 1 IsPaused: true Filter: OrderClosed Headers: x-api-key: integrator's key Properties: retryCount: 2 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Webhooks' example: - AppSource: Offerpad Uri: https://pdl.com/v1/FirstAmerican/order_different Id: 9aaead9f0e2c4ca8af6d67be87a10272 Secret: integrator's secret Description: Register multiple webhook 1 IsPaused: true Filter: OrderClosed Headers: x-api-key: integrator's key Properties: retryCount: 2 - Status: Failed Message: Filter:(FundingApproved) already exist. - Status: Failed Message: Invalid AppSource /webhooks/webhooksList: post: security: - bearerAuth: [] tags: - Webhooks summary: Delete multiple Webhooks description: Delete multiple Webhooks with First American operationId: Webhooks_Delete_Multiple parameters: - in: query name: appSource required: false schema: type: string description: the subscription group example: OpenAPI requestBody: content: application/json: schema: type: array items: type: string example: - c869db8136f24634bbf3ba6d92c4e8ff - 09048da2bb08499b9b5052e16907ba7c - da117c76-jhd3-4ee5-a1c1-8fa5ccf1fd51 text/json: schema: type: array items: type: string example: - c869db8136f24634bbf3ba6d92c4e8ff - 09048da2bb08499b9b5052e16907ba7c - da117c76-jhd3-4ee5-a1c1-8fa5ccf1fd51 application/xml: schema: type: array items: type: string example: - c869db8136f24634bbf3ba6d92c4e8ff - 09048da2bb08499b9b5052e16907ba7c - da117c76-jhd3-4ee5-a1c1-8fa5ccf1fd51 text/xml: schema: type: array items: type: string example: - c869db8136f24634bbf3ba6d92c4e8ff - 09048da2bb08499b9b5052e16907ba7c - da117c76-jhd3-4ee5-a1c1-8fa5ccf1fd51 application/x-www-form-urlencoded: schema: type: array items: type: string example: - c869db8136f24634bbf3ba6d92c4e8ff - 09048da2bb08499b9b5052e16907ba7c - da117c76-jhd3-4ee5-a1c1-8fa5ccf1fd51 required: true responses: '200': description: Success content: application/json: schema: type: string example: - id: c869db8136f24634bbf3ba6d92c4e8ff status: Success - id: 09048da2bb08499b9b5052e16907ba7c status: Success - id: da117c76-jhd3-4ee5-a1c1-8fa5ccf1fd51 status: Not found /webhooks/webhookRequests: put: security: - bearerAuth: [] tags: - Webhooks summary: Update mutiple Webhooks description: Update mutiple Webhooks with First American operationId: Webhooks_MultipulePUT requestBody: description: Webhook Request content: application/json: schema: $ref: '#/components/schemas/Webhooks' example: - AppSource: OpenAPI Uri: notification endpoint URL Id: c869db8136f24634bbf3ba6d92c4e8ff Secret: integrator's secret Description: Subscription to OrderCreated event IsPaused: false Filter: OrderCreated Headers: x-api-key: integrator's key Properties: retryCount: 5 - AppSource: OpenAPI Uri: notification endpoint URL Id: 09048da2bb08499b9b5052e16907ba7c Secret: integrator's secret Description: Subscription to CurativeCleared event IsPaused: false Filter: CurativeCleared Headers: x-api-key: integrator's key Properties: retryCount: 2 - AppSource: OpenAPI Uri: notification endpoint URL Id: da117c76-jhd3-4ee5-a1c1-8fa5ccf1fd51 Secret: integrator's secret Description: Subscription to DocumentDelivery event IsPaused: false Filter: DocumentDelivery Headers: x-api-key: integrator's key Properties: retryCount: 3 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/Webhooks' example: - Id: c869db8136f24634bbf3ba6d92c4e8ff Status: Success - Id: 09048da2bb08499b9b5052e16907ba7c Status: Uri/Domain Unauthorized - Id: da117c76-jhd3-4ee5-a1c1-8fa5ccf1fd51 Status: integrator's secret components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: OAuth (a.k.a JWT) Authentication is **mandatory**. Please enter a valid access token schemas: TokenResult: type: object properties: token_type: type: string expires_in: type: integer ext_expires_in: type: integer access_token: type: string OrderRequest: type: object properties: appSource: type: string description: A required unique application ID provided by First American Title to identify clients. service: enum: - Escrow - Title - EscrowTitle type: string description: A required value of available service options provided by First American Title. example: TitleEscrow parties: uniqueItems: false type: array items: anyOf: - $ref: '#/components/schemas/IndividualParty' - $ref: '#/components/schemas/LegalEntityParty' description: List of parties involved in the transaction. Party type can be either LegalEntityParty or IndividualParty propertyAddress: $ref: '#/components/schemas/PropertyAddress' officeId: type: string description: An optional field that can be provided if a preference of service location exists. An officeId can be obtained via the Offices resource. example: 4356 escrowOfficerCode: type: string description: An optional field that can be provided for escrow officer. An escrowOfficerCode can be obtained via the employees/escrowOfficers resource. example: CJCLEMENS titleOfficerCode: type: string description: An optional field that can be provided for title officer. A titleOfficerCode can be obtained via the employees/titleOfficers resource. example: CJCLEMENS transactionType: enum: - SaleWithMortgage - SaleCash - Refinance - EquityLoan - SaleWithConstructionLoan - ConstructionFinance - SearchPackage - Other type: string description: A required value that specifies the purpose for the transaction service request. example: SaleWithMortgage notes: type: string description: An optional free text field for additional service request information. externalTrackingId: type: string description: Client provided transaction ID used to communicate inbound and outbound. loan: $ref: '#/components/schemas/Loan' Documents: type: array items: $ref: '#/components/schemas/Document' description: List of documents involved in the transaction. transactionDetails: $ref: '#/components/schemas/TransactionDetails' required: - appSource - service - parties - propertyAddress - transactionType - externalTrackingId Party: type: object properties: PrimaryName: type: string TaxId: type: string OtherRole: enum: - NotApplicable - BuyerBorrower - Seller - BuyerRealEstateAgent - SellerRealEstateAgent - Lender - PayoffLender - MortgageBroker type: string Addresses: type: array items: $ref: '#/components/schemas/Address' required: - Role - stateCode IndividualParty: type: object properties: firstName: type: string description: 'The first name of the party in the transaction. ' lastName: type: string description: 'The last name of the party in the transaction. ' maritalStatus: enum: - aSingleMan - aSingleWoman - aSinglePerson - HusbandAndWife - aMarriedMan - aMarriedWoman - anUnmarriedPerson - aRegisteredDomesticPartner - NotApplicable - Other type: string description: The marital status of the party in the transaction. example: HusbandAndWife middleName: type: string description: The middle name of the party in the transaction. salutation: type: string description: The salutation of the party in the transaction. suffix: type: string description: The suffix of the party in the transaction. spouseName: type: string description: The spouse name of the party in the transaction. contactPoints: uniqueItems: false type: array items: $ref: '#/components/schemas/ContactPoint' description: A list of contact points. primaryName: type: string description: The primary name of the party in the transaction. taxId: type: string description: The tax ID of the party in the transaction. role: $ref: '#/components/schemas/IndividualPartyRole' otherrole: enum: - NotApplicable - BuyerBorrower - Seller - BuyerRealEstateAgent - SellerRealEstateAgent - CoBuyerBorrower - Other - MortgageBroker - BuyerRealEstateBroker - BuyerAttorney - BuyerTransactionCoordinator - NewLender - SellerAttorney - SellerRealEstateBroker - SellerTransactionCoordinator - OutsideTitle - OutsideEscrow - Builder - Investor type: string description: Only use this when RequestingSource is provided as the role. Consult with First American before using. addresses: uniqueItems: false type: array items: $ref: '#/components/schemas/Address' required: - role - firstName - lastName LegalEntityParty: type: object properties: legalEntity: enum: - Trust - BusinessEntity type: string contacts: uniqueItems: false type: array items: $ref: '#/components/schemas/PartyContact' primaryName: type: string description: The primary name of the legal entity in the transaction. taxId: type: string description: The tax ID of the legal entity in the transaction. role: $ref: '#/components/schemas/LegalEntityPartyRole' otherRole: $ref: '#/components/schemas/OtherRole' addresses: uniqueItems: false type: array items: $ref: '#/components/schemas/Address' hoiAccount: type: string description: The unique identifier assigned by a homeowner's insurance company to a customer's policy or account. hoaAccount: type: string description: The unique identifier assigned by a homeowner's association to the owner(s) of a property within the association. required: - role - primaryName - legalEntity PartyContact: type: object properties: firstName: type: string description: 'The first name of the party contact. ' lastName: type: string description: 'The last name of the party contact. ' contactPoints: uniqueItems: false type: array items: $ref: '#/components/schemas/ContactPoint' description: A list of contact points. role: $ref: '#/components/schemas/LegalEntityPartyContactRole' IndividualPartyRole: enum: - LoanOfficer - LoanProcessor - RequestingSource - BuyerBorrower - CoBuyerBorrower - Seller - BuyerRealEstateAgent - SellerRealEstateAgent - Other - MortgageBroker - BuyerRealEstateBroker - BuyerAttorney - BuyerTransactionCoordinator - NewLender - SellerAttorney - SellerRealEstateBroker - SellerTransactionCoordinator type: string description: "The role of the party in the transaction. BuyerBorrower required. \n\nRequestingSource\ \ is a special case for supporting iBuyers. Consult with First American before using." LegalEntityPartyRole: enum: - RequestingSource - BuyerBorrower - Seller - BuyerRealEstateAgent - SellerRealEstateAgent - Lender - PayoffLender - MortgageBroker - HomeOwnerAssociation - HomeOwnerInsurance - Other - BuyerRealEstateBroker - BuyerAttorney - BuyerTransactionCoordinator - NewLender - SellerAttorney - SellerRealEstateBroker - SellerTransactionCoordinator type: string description: "The role of the party in the transaction. BuyerBorrower required. \n\nRequestingSource\ \ is a special case for supporting iBuyers. Consult with First American before using." LegalEntityPartyContactRole: enum: - BuyerBorrower - Seller - BuyerRealEstateAgent - SellerRealEstateAgent - Lender - PayoffLender - LoanOfficer - LoanProcessor - LoanCloser - MortgageBroker - HomeOwnerAssociation - HomeOwnerInsurance - Other - BuyerRealEstateBroker - BuyerAttorney - BuyerTransactionCoordinator - NewLender - SellerAttorney - SellerRealEstateBroker - SellerTransactionCoordinator type: string description: The role of the party in the transaction. BuyerBorrower required. OtherRole: enum: - NotApplicable - BuyerBorrower - Seller - BuyerRealEstateAgent - SellerRealEstateAgent - Lender - PayoffLender - MortgageBroker - Other - BuyerRealEstateBroker - BuyerAttorney - BuyerTransactionCoordinator - NewLender - SellerAttorney - SellerRealEstateBroker - SellerTransactionCoordinator - OutsideTitle - OutsideEscrow - Builder - Investor type: string description: Only use this when RequestingSource is provided as the role. Consult with First American before using. example: BuyerBorrower PropertyAddress: description: A required field providing the site location of the property in question. type: object properties: addressLine1: type: string description: Address Line 1 example: 2 First American Way addressLine2: type: string description: Address Line 2 example: Unit 123 cityName: type: string description: City of an Address example: Santa Ana countyName: type: string description: County Name example: Orange countyFips: type: string description: County FIPS example: 059 postalCode: type: string pattern: ^[0-9]{5}(-[0-9]{4})?$ description: Postal Code example: 92706 stateCode: type: string description: State Code example: CA PropertyType: enum: - SingleFamilyResidence - MultiResidential - Townhouse - Condominium - ManufacturedHome - VacantLand type: string description: Property Type example: SingleFamilyResidence APN: type: string description: Property APN example: 006-007-001-000 required: - countyName - postalCode - stateCode Address: type: object properties: addressType: enum: - Other - Billing - Business - CurrentAddress - ForwardingAddress - Home - Mailing - NotaryAddress - SigningLocation - SubjectProperty type: string description: Address Type example: CurrentAddress addressLine1: type: string description: Address Line 1 example: 2 First American Way addressLine2: type: string description: Address Line 2 example: Unit 123 cityName: type: string description: City of an address example: Santa Ana countyName: type: string description: County Name example: Orange postalCode: type: string description: Postal Code example: 92706 stateCode: type: string description: State Code example: CA description: Address Definition required: - postalCode - stateCode ContactPoint: type: object properties: contactPointType: enum: - Work - Mobile - Home - Other type: string description: Type of Contact Point example: Work emailAccount: type: string description: Contact's email address. faxNumber: type: string description: Contact's Fax Number. example: 714-250-0000 faxNumberExt: type: string description: Fax Number Extension phoneNumber: type: string description: Contact's phone number example: 714-250-0000 phoneNumberExt: type: string description: Phone Number Extension description: Contact Point Definition required: - contactPointType Loan: type: object properties: loanNumber: type: string description: An optional field that contains a unique loan identifier example: Loan12345-345 loanAmount: type: number format: decimal description: An optional field for the total dollar amount of the mortgage note that is being requested by the borrower example: 1234 LoanType: enum: - Conventional - FHA - VA type: string description: An optional field that contains a unique different loan types example: Conventional TransactionDetails: type: object properties: contractSignedDate: type: string format: date description: An optional field for the date on which the purchase agreement was signed example: '2020-02-03T00:00:00.000Z' earnestMoneyDeposit: type: number format: decimal description: An optional field for the amount of earnest money specified in the purchase agreement example: 234 inspectionEndDate: type: string format: date description: An optional field for the buyer's inspection deadline as specified in the purchase agreement example: '2020-02-05T00:00:00.000Z' homeOwnersAssociation: type: boolean description: An optional field to indicate whether the subject property is part of an HOA example: false closeOfEscrowDate: type: string format: date description: An optional field for estimated settlement date for the transaction example: '2020-02-11T00:00:00.000Z' acquisitionPrice: type: number format: decimal description: An optional field for sale price of the subject property example: 1290 payoffInformations: type: array items: $ref: '#/components/schemas/PayoffInformation' PayoffInformation: type: object properties: payoffType: enum: - LenderOrderBothPayoffSubordinate - LenderOrderPayoff - LenderOrderSubordinate - Other - TitleCompanyOrderBothPayoffSubordinate - TitleCompanyOrderPayoff - TitleCompanyOrderSubordinate type: string description: Payoff Type example: LenderOrderSubordinate loanNumber: type: string description: Loan Number example: '787782232' loanAmount: type: number format: decimal description: Loan Amount example: '70000' lienPosition: type: number format: integer description: Lien Position example: '1' liabilityType: enum: - BorrowerEstimatedTotalMonthlyLiabilityPayment - CollectionsJudgementsAndLiens - DeferredStudentLoan - DelinquentTaxes - FirstPositionMortgageLien - Garnishments - HELOC - HomeownersAssociationLien - Installment - LeasePayment - MonetaryJudgment - MortgageLoan - Open30DayChargeAccount - Other - PersonalLoan - Revolving - SecondPositionMortgageLien - Taxes - TaxLien - ThirdPositionMortgageLien - UnsecuredHomeImprovementLoanInstallment - UnsecuredHomeImprovementLoanRevolving type: string description: Payoff Type example: MortgageLoan lenderName: type: string description: Lender Name example: Wells Fargo lenderPhone: type: string description: Lender Phone example: 123-123-1234 DocumentPayload: type: object properties: VestingInformation: type: string description: Optional data that describes the way an owner (or owners) of property takes title to their real estate. LegalDescription: type: string description: Optional data that offers a description of real estate that is sufficient to identify it for legal purposes. Name: type: string maxLength: 256 description: The required document name used by the appSource. Description: type: string description: Optional descriptive name used by the appSource. DocumentType: enum: - TitleSearch - TitleCommitment - EMDReceipt - PayOff - FinalPolicy - LenderPolicy - TrailingDocuments - ExecutedClosingPackage-Piggyback - DisbursementSummaryReport - FeeSheet - ClosingProtectionLetter - TaxDocument - SettlementStatement - RecordedPackage - ClosingDisclosure - FundingTransmittal - ClosingDisclosureDraft - ExecutedClosingPackage - WiringInstructions type: string description: An optional value used to identify the type of document. PageCount: format: int32 type: integer description: An optional field used to provide the total number of pages included in a document upload. IsFinalized: type: boolean description: An optional value that can be used to state the status of a document version. FileExtension: enum: - pdf - doc - tiff - jpg - jpeg - docx - xls - xlsx type: string description: 'A required field used to identify the format of the document. ' Version: type: string description: An optional numeric value to identify the version of a document. EmbeddedContent: type: string description: A required Base64 encoded file within a max size of 20 MB. maxLength: 20971520 ServiceType: $ref: '#/components/schemas/ServiceType' Message: type: string description: Optional free form text provided by the application source. required: - Name - ServiceType - FileExtension - EmbeddedContent Document: type: object properties: Name: type: string maxLength: 256 description: The required document name used by the appSource. Description: type: string description: Optional descriptive name used by the appSource. DocumentType: enum: - TitleSearch - TitleCommitment - EMDReceipt - PayOff - FinalPolicy - LenderPolicy - TrailingDocuments - ExecutedClosingPackage-Piggyback - DisbursementSummaryReport - FeeSheet - ClosingProtectionLetter - TaxDocument - SettlementStatement - RecordedPackage - ClosingDisclosure - FundingTransmittal - ClosingDisclosureDraft - ExecutedClosingPackage - WiringInstructions type: string description: An optional value used to identify the type of document. PageCount: format: int32 type: integer description: An optional field used to provide the total number of pages included in a document upload. IsFinalized: type: boolean description: An optional value that can be used to state the status of a document version. FileExtension: enum: - pdf - doc - tiff - jpg - jpeg - docx - xls - xlsx type: string description: 'A required field used to identify the format of the document. ' EmbeddedContent: type: string description: A required Base64 encoded file within a max size of 20 MB. maxLength: 20971520 required: - Name - FileExtension - EmbeddedContent ResourceResponse: type: object properties: ID: format: uuid type: string example: 00000000-0000-0000-0000-000000000000 description: A unique message ID used for troubleshooting. externalReferenceId: type: string description: An echo of the externalReferenceId provided in the request. DateTime: $ref: '#/components/schemas/UtcDateTime' Status: format: int32 type: integer description: 1 indicates success. 0 indicates failure. Review Message field for details. Message: type: string description: Provides a detailed desciption of the Status field. ServiceResponse: type: object properties: ID: format: uuid type: string example: 00000000-0000-0000-0000-000000000000 externalReferenceId: type: string FileNumber: type: string Services: type: array items: $ref: '#/components/schemas/Service' Service: type: object properties: Type: $ref: '#/components/schemas/ServiceType' Officer: $ref: '#/components/schemas/Contact' Assistant: $ref: '#/components/schemas/Contact' Contact: type: object properties: Name: type: string PhoneNumber: type: string EventNotification: title: EventNotification type: object properties: Id: type: string description: A unique message ID used for troubleshooting. RetryCount: type: integer format: int32 description: The number of times we have attempted to deliver this message. Notifications: type: array items: $ref: '#/components/schemas/Event' description: A collection of events. Currently only one event is provided per notification. Event: title: Event type: object properties: Action: $ref: '#/components/schemas/EventType' ExternalTrackingId: type: string Message: oneOf: - $ref: '#/components/schemas/MessagePayload' - $ref: '#/components/schemas/FundsDisbursedMessagePayload' - $ref: '#/components/schemas/CurativeClearedMessagePayload' - $ref: '#/components/schemas/DocumentPayload' - $ref: '#/components/schemas/ServiceResponse' description: "Action to Message mapping:\n \nAction | Message\n ------|-------------\n OrderCreated\ \ | ServiceResponse\n DocumentDelivery | DocumentPayload\n CurativeCleared | CurativeClearedMessagePayload\n\ \ FundsDisbursed | FundsDisbursedMessagePayload\n MessageAdded | MessagePayload\n FundingApproved\ \ | MessagePayload\n CurativePending | MessagePayload\n DisburseHold | MessagePayload\n OrderRejected\ \ | MessagePayload\n OrderCancelled | MessagePayload\n OrderClosed | MessagePayload\n AppointmentScheduled\ \ | MessagePayload\n TitleProductDelivered | DocumentPayload\n FinalPolicyDelivered | DocumentPayload\n\ \ CDDraft | DocumentPayload\n CDBalanced | MessagePayload\n RecordingCompleted | MessagePayload\n\ \ SigningOrdered | MessagePayload\n SigningBorrowerNotified | MessagePayload\n SigningCompleted\ \ | MessagePayload\n . | .\n" MessagePayload: title: MessagePayload type: object properties: appSource: type: string example: Replace with FA Provided ID ServiceType: $ref: '#/components/schemas/ServiceType' Message: type: string description: The required message content. MessageType: type: string description: The required message type. required: - AppSource - ServiceType - Message ClientContactUpdate: title: ClientContactUpdate type: object properties: AppSource: type: string example: Replace with FA Provided ID ServiceType: $ref: '#/components/schemas/ServiceType' MessageType: type: string description: The required message type. Message: type: string description: The required message. IndividualParty: type: object properties: firstName: type: string description: 'The first name of the party in the transaction. ' middleName: type: string description: The middle name of the party in the transaction. lastName: type: string description: 'The last name of the party in the transaction. ' role: $ref: '#/components/schemas/IndividualPartyRole' contactPoints: type: array items: type: object properties: ContactPointType: enum: - Work - Mobile - Home - Other type: string description: Contact Point Type EmailAccount: type: string description: Email Account PhoneNumber: type: string description: Phone Number description: List of Contact Points. AddressType: enum: - Other - Billing - Business - CurrentAddress - ForwardingAddress - Home - Mailing - NotaryAddress - SigningLocation - SubjectProperty type: string description: Address Type PropertyAddress: type: object properties: AddressLine1: type: string description: Address Line1 AddressLine2: type: string description: Address Line2 CityName: type: string description: City Name CountyName: type: string description: County Name PostalCode: type: string description: Postal Code StateCode: type: string description: State Code required: - AppSource - ServiceType FundsDisbursedMessagePayload: title: FundsDisbursedMessagePayload type: object properties: ServiceType: $ref: '#/components/schemas/ServiceType' Comments: type: string FundedAmount: type: number format: decimal FundedType: type: string DisbursementDate: $ref: '#/components/schemas/UtcDateTime' CurativeClearedMessagePayload: title: CurativeClearedMessagePayload type: object properties: ServiceType: $ref: '#/components/schemas/ServiceType' Comments: type: string ClearedDate: $ref: '#/components/schemas/UtcDateTime' ServiceType: title: ServiceType enum: - Escrow - Title - EscrowTitle - Other type: string description: The required service type associated with the payload. example: Escrow UtcDateTime: type: string format: date-time example: '2018-03-20T09:12:28Z' Office: properties: officeSource: type: string description: Internal FA System from which data is extracted example: FAST officeId: type: string description: Internal FA Office Identifier example: '11065' officeAltauniversalId: type: string description: ALTA (American Land Title Association) Identifier example: '1164687' officeName: type: string description: Name of Title/Escrow Office example: FA Mortgage Solutions officeDoingBusinessAsName: type: string description: DBA (Doing Business As) Name example: Order Fulfillment Solutions (RLA) officeStatus: type: string description: Current status of the of the office example: ACTIVE officeStatusDate: type: string description: Date of current status example: '2018-11-02T16:00:01.47' companyName: type: string description: Name of Company example: First American Title Insurance Company officeAddressLine1: type: string description: Company’s Office Address Line 1 example: 3 First American Way officeAddressLine2: type: string description: Company’s Office Address Line 2 example: '' officeCity: type: string description: Company’s City example: Santa Ana officeCounty: type: string description: Company’s County example: Orange officeState: type: string description: Company’s State example: CA officeZipCode: type: string description: Company’s Zip Code example: '92707' officeLatitude: type: string description: Latitude of company’s location example: '33.7010837702385' officeLongitude: type: string description: Longitude of company’s location example: '-117.861241175957' officePhoneAreaCode: type: string description: Office Phone Number Area Code example: '714' officePhoneNumber: type: string description: Office Phone Number example: 250-3000 officeFaxAreaCode: type: string description: Office Fax Area Code example: 'null' officeFaxNumber: type: string description: Office Fax Number example: 'null' officeUnderwriters: type: string description: Underwriter(s) available to specific agent example: First American Title Insurance Company officeClientTypes: type: string description: Type of office/services allowed/approved of by First American example: '' Offices: type: array items: $ref: '#/components/schemas/Office' EventType: enum: - OrderCreated - DocumentDelivery - CurativeCleared - FundsDisbursed - MessageAdded - OrderRejected - OrderCancelled - OrderClosed - AppointmentScheduled - TitleProductDelivered - FinalPolicyDelivered - CDDraft - FundingApproved - DisburseHold - CurativePending - RecordingCompleted - SigningOrdered - SigningBorrowerNotified - SigningCompleted - CDBalanced type: string Webhook: type: object properties: AppSource: type: string description: Subscription grouping Uri: type: string description: Subscription endpoint Id: type: string description: Webhook unique identifier Secret: type: string description: secret to be used when generating a message hash Description: type: string description: string describing the webhook IsPaused: type: boolean description: determines if the subscription is paused Filter: $ref: '#/components/schemas/EventType' Headers: type: object properties: x-api-key: type: string description: x-api-key header property/value pair description: list of header key/value pairs Properties: type: object properties: retryCount: type: integer enum: - 1 - 2 - 3 - 4 - 5 description: retry count properties property/value pair description: list of properties key/value pairs Webhooks: type: array items: $ref: '#/components/schemas/Webhook' Employee: type: object properties: Id: type: integer description: Field that contains a unique employee identifier example: '123455' Code: type: string description: Field that contains a unique employee identifier example: ARGUMA FirstName: type: string description: Field that contains employee first name example: Tom LastName: type: string description: Field that contains employee last name example: Dick MiddleName: type: string description: Field that contains employee middle name example: Harry OrderCancelRequest: type: object properties: AppSource: type: string example: Replace with FA Provide ID description: Subscription grouping ServiceType: $ref: '#/components/schemas/ServiceType' ReasonForCancel: type: string description: Reason for cancel required: - ServiceType OrderCancelResponse: type: object properties: ID: format: uuid type: string example: 00000000-0000-0000-0000-000000000000 description: A unique message ID used for troubleshooting. externalReferenceId: type: string description: An echo of the externalReferenceId provided in the request. DateTime: $ref: '#/components/schemas/UtcDateTime' Status: format: int32 type: integer description: 1 indicates success. 0 indicates failure. Review Message field for details. Message: type: string description: Provides a detailed desciption of the Status field.