nCino Loans API

Endpoints for loans

OpenAPI Specification

ncino-loans-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: nCino Mortgage Loans API
  description: API framework built from the ground up to be more a robust, forward thinking solution with tools to support our developer community
  version: '1.0'
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://api.ncinomortgage.com
  description: Production server
security:
- OAuth2: []
tags:
- name: Loans
  description: Endpoints for loans
paths:
  /loans:
    post:
      tags:
      - Loans
      operationId: loans-create
      parameters:
      - $ref: '#/components/parameters/ApiVersionHeader'
      responses:
        '201':
          description: Created loan
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCreated'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '412':
          description: Resource is in an invalid state
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSet'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      description: This endpoint will create a <<glossary:loan>> record.
      summary: Create a loan
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LoanPostBody'
    get:
      tags:
      - Loans
      operationId: loans-index
      parameters:
      - name: borrower_name
        description: Filter loans by borrower name (prefix match against the borrower or co-borrower first or last name).
        required: false
        in: query
        schema:
          type: string
      - name: closing_date_end
        description: Filter to loans with a closing date on or before this date (inclusive).
        required: false
        in: query
        schema:
          type: string
          format: date
      - name: closing_date_start
        description: Filter to loans with a closing date on or after this date (inclusive).
        required: false
        in: query
        schema:
          type: string
          format: date
      - name: in_los
        description: Filter loans by whether they are synced to the LOS.
        required: false
        in: query
        schema:
          type: boolean
      - name: is_active
        description: Filter loans by active status (default true).
        required: false
        in: query
        schema:
          type: boolean
      - name: loan_number
        description: Filter loans by exact loan number.
        required: false
        in: query
        schema:
          type: string
      - name: loan_officer_id
        description: <<glossary:Loan officer>> ID by which to filter loans.
        required: false
        in: query
        schema:
          type: string
          format: uuid
      - name: loan_purpose
        description: Loan purpose search parameter by which to filter loans.
        required: false
        in: query
        schema:
          type: string
      - name: loan_type
        description: Loan type search parameter by which to filter loans.
        required: false
        in: query
        schema:
          type: string
      - name: order
        description: 'Sort by creation date: "asc" (oldest first, default) or "desc" (newest first).'
        required: false
        in: query
        schema:
          type: string
          enum:
          - asc
          - desc
      - name: org_id
        description: Organization (company, region, or branch) ID by which to filter loans.
        required: false
        in: query
        schema:
          type: string
          format: uuid
      - name: user_borrower_id
        description: User borrower ID by which to filter loans.
        required: false
        in: query
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/Page'
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/CreatedAfter'
      - $ref: '#/components/parameters/CreatedBefore'
      - $ref: '#/components/parameters/UpdatedAfter'
      - $ref: '#/components/parameters/UpdatedBefore'
      - $ref: '#/components/parameters/ApiVersionHeader'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoanPagination'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      description: This endpoint will retrieve all <<glossary:loan>> records.
      summary: Retrieve all loans
  /loans/{loan_id}:
    get:
      tags:
      - Loans
      operationId: loans-show
      parameters:
      - name: loan_id
        description: Loan ID.
        required: true
        in: path
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/ApiVersionHeader'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Loan.Detail'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      description: This endpoint will retrieve a <<glossary:loan>> record.
      summary: Retrieve a loan
    patch:
      tags:
      - Loans
      operationId: loans-update
      parameters:
      - name: loan_id
        description: Loan ID.
        required: true
        in: path
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/ApiVersionHeader'
      responses:
        '204':
          description: Successfully updated loan
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NoContent'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      description: This endpoint will update a <<glossary:loan>> record.
      summary: Update a loan
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LoanPatchBody'
    delete:
      tags:
      - Loans
      operationId: loans-destroy
      parameters:
      - name: loan_id
        description: Loan ID.
        required: true
        in: path
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/ApiVersionHeader'
      responses:
        '201':
          description: Created <<glossary:asynchronous job>> to delete the loan.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCreated'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      description: This endpoint will delete a <<glossary:loan>> record.
      summary: Delete a loan
  /loans/{loan_id}/actions:
    post:
      tags:
      - Loans
      operationId: loans-actions
      parameters:
      - name: loan_id
        description: Loan ID.
        required: true
        in: path
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/ApiVersionHeader'
      responses:
        '204':
          description: No content
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NoContent'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '412':
          description: Resource is in an invalid state
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSet'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      description: 'This endpoint will perform an action on a <<glossary:loan>> record.


        > 🚧 Under construction

        > **Certain actions on this endpoint are in beta.** Functionality or availability are subject to change and will be communicated.


        > 📌 Available actions

        **DEACTIVATE** - deactivate a loan (sets is_active to false)

        **ACTIVATE** - activate a loan (sets is_active to true)

        **REORDER_BORROWERS** - reorder a loan''s borrowers

        **REASSIGN_LO** - reassign a loan''s loan officer

        🚧 **ASSIGN_TEAM_MEMBER** - assign a team member to a loan

        🚧 **UNASSIGN_TEAM_MEMBER** - unassign a team member from a loan'
      summary: Perform action on a loan
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              oneOf:
              - $ref: '#/components/schemas/DeactivateLoan'
              - $ref: '#/components/schemas/ActivateLoan'
              - $ref: '#/components/schemas/ReorderBorrowers'
              - $ref: '#/components/schemas/ReassignLo'
              - $ref: '#/components/schemas/AssignTeamMember'
              - $ref: '#/components/schemas/UnassignTeamMember'
              discriminator:
                propertyName: action
                mapping:
                  DEACTIVATE: '#/components/schemas/DeactivateLoan'
                  ACTIVATE: '#/components/schemas/ActivateLoan'
                  REORDER_BORROWERS: '#/components/schemas/ReorderBorrowers'
                  REASSIGN_LO: '#/components/schemas/ReassignLo'
                  ASSIGN_TEAM_MEMBER: '#/components/schemas/AssignTeamMember'
                  UNASSIGN_TEAM_MEMBER: '#/components/schemas/UnassignTeamMember'
  /loans/{loan_id}/ron_eligibility:
    get:
      tags:
      - Loans
      operationId: loans-check_ron_eligibility
      parameters:
      - name: loan_id
        description: Loan ID.
        required: true
        in: path
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/ApiVersionHeader'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RonEligibility'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '404':
          description: Loan not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorSet'
          headers:
            X-Api-Version:
              $ref: '#/components/headers/ApiVersionResponseHeader'
            X-Api-Supported-Versions:
              $ref: '#/components/headers/ApiSupportedVersionsResponseHeader'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      description: '> 🚧 Under construction

        > **This endpoint is in beta.** Functionality may change without notice, support is limited, and use in production is not recommended. Your feedback is appreciated.


        This endpoint checks whether a <<glossary:loan>> is eligible for Remote Online Notarization

        (RON), based on the loan''s saved property address and the servicer''s RON configuration.'
      summary: 🚧 Check RON eligibility for a loan (BETA)
components:
  schemas:
    AssignTeamMember:
      allOf:
      - $ref: '#/components/schemas/LoanAction'
      - type: object
        properties:
          team_member_id:
            type: string
            format: uuid
            description: ID of the team member to assign to the loan.
        required:
        - team_member_id
        additionalProperties: false
      description: Available properties for assigning a team member to a loan.
    LoanPatchBody:
      type: object
      properties:
        type:
          type:
          - string
          - 'null'
          description: Loan type.
        purpose:
          type:
          - string
          - 'null'
          description: Loan purpose.
        amount:
          type:
          - number
          - 'null'
          format: float
          description: Loan amount.
        closing_date:
          type:
          - string
          - 'null'
          format: date
          description: Date on which the loan plans to close.
        additional_comments:
          type:
          - string
          - 'null'
          description: Additional comments on the loan record.
        amortization_type:
          type:
          - string
          - 'null'
          description: Loan's amortization type.
        amount_base:
          type:
          - number
          - 'null'
          format: float
          description: Loan's base amount.
        amount_total:
          type:
          - number
          - 'null'
          format: float
          description: Loan's total amount.
        approved_date:
          type:
          - string
          - 'null'
          format: date
          description: Date on which the loan was approved.
        apr:
          type:
          - number
          - 'null'
          format: float
          description: Loan's annual percentage rate.
        debt_to_income_ratio:
          type:
          - number
          - 'null'
          format: float
          description: Loan's debt-to-income ratio.
        doc_signing_date:
          type:
          - string
          - 'null'
          format: date
          description: Date on which loan documents are signed.
        down_payment_amount:
          type:
          - number
          - 'null'
          format: float
          description: Loan's down payment dollar amount.
        down_payment_pct:
          type:
          - number
          - 'null'
          format: float
          description: Loan's down payment percentage of loan amount.
        dti_high:
          type:
          - number
          - 'null'
          format: float
          description: Loan's debt-to-income ratio high.
        dti_low:
          type:
          - number
          - 'null'
          format: float
          description: Loan's debt-to-income ratio low.
        first_payment_date:
          type:
          - string
          - 'null'
          format: date
          description: Date on which the loan's first payment is due.
        first_time_buyer:
          type:
          - boolean
          - 'null'
          description: Whether the loan is for a first-time buyer.
        funding_date:
          type:
          - string
          - 'null'
          format: date
          description: Date on which the loan intends to be funded.
        intent_to_proceed_at:
          type:
          - string
          - 'null'
          format: date
          description: Date on which the intent to proceed was acknowledged.
        intent_to_proceed_letter_sent_date:
          type:
          - string
          - 'null'
          format: date
          description: Date on which the intent to proceed letter was sent.
        interest_rate_lock_expires_at:
          type:
          - string
          - 'null'
          format: date
          description: Datetime at which the loan's interest rate lock expires.
        interest_rate:
          type:
          - number
          - 'null'
          format: float
          description: Loan's interest rate.
        lien_position:
          type:
          - string
          - 'null'
          description: Loan's lien position.
        loan_term_months:
          type:
          - integer
          - 'null'
          description: Loan's term in months.
        maturity_date:
          type:
          - string
          - 'null'
          format: date
          description: Date on which the loan reaches maturity.
        occupancy_status:
          type:
          - string
          - 'null'
          description: Loan's occupancy status.
        p_and_i_payment_amount:
          type:
          - number
          - 'null'
          format: float
          description: Loan's principal plus interest payment amount.
        payment_frequency:
          type:
          - string
          - 'null'
          description: Loan's payment frequency.
        preapproval_amount:
          type:
          - number
          - 'null'
          format: float
          description: Loan's preapproval amount.
        preapproval_notes:
          type:
          - string
          - 'null'
          description: Notes on the loan's preapproval.
        processor_email:
          type:
          - string
          - 'null'
          description: Loan processor's email.
        program:
          type:
          - string
          - 'null'
          description: Loan's program.
        rate_expires_at:
          type:
          - string
          - 'null'
          format: date
          description: Datetime at which the loan's rate expires.
        rate_locked:
          type:
          - boolean
          - 'null'
          description: Whether the loan's rate is locked.
        total_monthly_payment_amount:
          type:
          - number
          - 'null'
          format: float
          description: Loan's total monthly payment amount.
        property:
          allOf:
          - $ref: '#/components/schemas/LoanInputAddress'
          description: Loan's property information.
      description: Available properties for updating a loan record
      additionalProperties: false
      minProperties: 1
    LoanInputAddress:
      type: object
      properties:
        street:
          type:
          - string
          - 'null'
          minLength: 1
          maxLength: 255
          description: Loan's property street.
        city:
          type:
          - string
          - 'null'
          minLength: 1
          maxLength: 255
          description: Loan's property city.
        state:
          allOf:
          - $ref: '#/components/schemas/StateCode'
          description: Loan's state.
        zip:
          type:
          - string
          - 'null'
          minLength: 5
          maxLength: 10
          description: Loan's property zip code.
        county:
          type:
          - string
          - 'null'
          minLength: 1
          maxLength: 255
          description: Loan's property county.
        appraised_value:
          type:
          - integer
          - 'null'
          description: Loan's property appraised value.
        purchase_price:
          type:
          - integer
          - 'null'
          description: Loan's property purchase price.
        estimated_value:
          type:
          - integer
          - 'null'
          description: Loan's property estimated value.
        num_of_stories:
          type:
          - integer
          - 'null'
          description: Loan's property number of stories.
        num_of_units:
          type:
          - integer
          - 'null'
          description: Loan's property number of units.
      description: Available properties for a loan's address.
      additionalProperties: false
    ReassignLo:
      allOf:
      - $ref: '#/components/schemas/LoanAction'
      - type: object
        properties:
          loan_officer_id:
            type: string
            format: uuid
            description: ID of the loan officer to reassign the loan to.
        required:
        - loan_officer_id
        additionalProperties: false
      description: Available properties for reassigning a loan's loan officer.
    ReorderBorrowers:
      allOf:
      - $ref: '#/components/schemas/LoanAction'
      - type: object
        properties:
          pairs:
            type: array
            items:
              $ref: '#/components/schemas/BorrowerPair'
            minItems: 1
            description: List of borrower pairs on the loan. All borrower guids must be provided.
        required:
        - pairs
        additionalProperties: false
      description: Available properties for reordering borrowers on a loan.
    RonUnderwriter:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
          description: Underwriter identifier from the RON vendor.
        name:
          type:
          - string
          - 'null'
          description: Underwriter name.
      description: An underwriter eligible through a RON title agency.
      additionalProperties: false
    Borrower:
      allOf:
      - $ref: '#/components/schemas/AbstractResourceModel'
      - type: object
        properties:
          pair_index:
            type: integer
            description: Index (order) of the borrower pair that the borrower belongs to.
          email:
            type:
            - string
            - 'null'
            description: Borrower's email.
          role:
            type: string
            description: Borrower's role type on the loan.
        additionalProperties: false
      description: Borrower model
    AbstractResourceModel:
      allOf:
      - $ref: '#/components/schemas/AbstractModel'
      - type: object
        properties:
          id:
            type: string
            format: uuid
            description: Unique identifier for the record.
        required:
        - id
        additionalProperties: false
    NoContent:
      type: object
      properties: {}
      additionalProperties: false
    Error:
      type: object
      properties:
        id:
          type: string
          description: A unique ID (useful as a reference when debugging an error with support)
        status:
          type: integer
          description: The HTTP status code
        title:
          type: string
          description: A generic title
        detail:
          type: string
          description: A detailed message
        _links:
          type: object
          description: A list of relevant links
      required:
      - id
      - status
      - title
      example:
        id: 123abc
        status: 400
        title: Generic title for the error
        detail: Detailed message for the error
        _links:
          resource: contextual resource if applicable
    ResourceCreated:
      allOf:
      - $ref: '#/components/schemas/AbstractResourceModel'
      description: Resource created model
    AbstractModel:
      type: object
      properties:
        _self:
          type: string
          description: The model's resource link to itself.
        _type:
          type: string
          description: The model's type.
        _links:
          type: object
          description: A list of links for the model's associations.
      required:
      - _self
      - _type
      additionalProperties: false
    RonTitleAgencyAddress:
      type: object
      properties:
        street_line_1:
          type:
          - string
          - 'null'
          description: Street line 1.
        street_line_2:
          type:
          - string
          - 'null'
          description: Street line 2.
        city:
          type:
          - string
          - 'null'
          description: City.
        state:
          type:
          - string
          - 'null'
          description: State code.
        postal_code:
          type:
          - string
          - 'null'
          description: Postal code.
        country:
          type:
          - string
          - 'null'
          description: Country code.
      description: Address for a RON title agency.
      additionalProperties: false
    LoanAction:
      type: object
      properties:
        action:
          type: string
          enum:
          - DEACTIVATE
          - ACTIVATE
          - REORDER_BORROWERS
          - REASSIGN_LO
          - ASSIGN_TEAM_MEMBER
          - UNASSIGN_TEAM_MEMBER
          description: Action to perform.
      required:
      - action
      description: Available properties for a loan action.
      additionalProperties: false
    RonJurisdiction:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
          description: Jurisdiction identifier from the RON vendor.
        name:
          type:
          - string
          - 'null'
          description: Jurisdiction (county or city) name.
        state:
          type:
          - string
          - 'null'
          description: Jurisdiction state code.
        supported:
          type:
          - boolean
          - 'null'
          description: Whether the jurisdiction is supported by the vendor.
        recording_type:
          type:
          - string
          - 'null'
          description: The recording type for the jurisdiction.
        eligible:
          type:
          - boolean
          - 'null'
          description: Whether the jurisdiction is eligible for RON.
        eligible_title_agencies:
          type: array
          items:
            $ref: '#/components/schemas/RonTitleAgency'
          description: Title agencies eligible to record in this jurisdiction.
      description: A recording jurisdiction evaluated for Remote Online Notarization (RON) eligibility.
      additionalProperties: false
    Property:
      allOf:
      - $ref: '#/components/schemas/AbstractModel'
      - type: object
        properties:
          address:
            allOf:
            - $ref: '#/components/schemas/PropertyAddress'
            description: Property's address.
          type:
            type:
            - string
            - 'null'
            description: Property type.
        additionalProperties: false
      description: Property model
    EmptyString:
      type: string
      enum:
      - ''
      description: An empty string.
    Borrower.Preview:
      allOf:
      - $ref: '#/components/schemas/Borrower'
      - type: object
        properties:
          full_name:
            type: string
            description: Borrower's name.
      description: Borrower model (Preview)
    ErrorSet:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Error'
      required:
      - errors
      example:
        errors:
        - id: 123abc
          status: 400
          title: Generic title for the error
          detail: Detailed message for the error
          _links:
            resource: contextual resource if applicable
    BorrowerPair:
      type: object
      properties:
        borrower_id:
          type: string
          format: uuid
          description: ID of the borrower on the pair
        co_borrower_id:
          type: string
          format: uuid
          description: ID of the coborrower on the pair
        is_title_only:
          type: boolean
          description: Whether the borrower is a title-only borrower. Defaults to false if not provided.
      required:
      - borrower_id
      description: Available properties for denoting a borrower pair on a loan.
      additionalProperties: false
    PropertyAddress:
      allOf:
      - $ref: '#/components/schemas/Address'
      - type: object
        properties:
          county:
            type:
            - string
            - 'null'
            description: County.
        additionalProperties: false
      description: PropertyAddress model
    RonEligibility:
      type: object
      properties:
        is_ron_eligible:
          type: boolean
          description: Whether the loan is eligible for RON based on its property's recording jurisdiction.
        message:
          type:
          - string
          - 'null'
          description: Human-readable explanation when the loan is not eligible or RON is not configured.
        ron_vendor:
          type:
          - string
          - 'null'
          description: The RON vendor evaluated for eligibility.
        jurisdictions:
          type: array
          items:
            $ref: '#/components/schemas/RonJurisdiction'
          description: Recording jurisdictions evaluated for eligibility.
      description: Remote Online Notarization (RON) eligibility result for a <<glossary:loan>>.
      additionalProperties: false
    Property.Detail:
      allOf:
      - $ref: '#/components/schemas/Property'
      - type: object
        properties:
          appraised_value:
            type:
            - number
            - 'null'
            format: float
            description: Property's appraised value.
          estimated_value:
            type:
            - number
            - 'null'
            format: float
            description: Property's estimated value.
          purchase_price:
            type:
            - number
            - 'null'
            format: float
            description: Property's purchase price.
          number_of_units:
            type:
            - integer
            - 'null'
            description: Number of units at property.
          number_of_stories:
            type:
            - integer
            - 'null'
            description: Number of stories at property.
      description: Property model (Detail)
    AbstractPagination:
      allOf:
      - $ref: '#/components/schemas/AbstractCollection'
      - type: object
        properties:
        

# --- truncated at 32 KB (52 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ncino/refs/heads/main/openapi/ncino-loans-api-openapi.yml