---
updatedAt: 2026-05-27T22:29:41.000Z
agentTools:
  projectIndex: https://docs.spinwheel.io/llms.txt
---

# Update a Home Loan

This API updates user records with accurate home loan account numbers.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "paths": {
    "/v1/users/{userId}/homeLoans/{homeLoanId}": {
      "patch": {
        "operationId": "Update Home Loan",
        "summary": "Update a Home Loan",
        "description": "This API updates user records with accurate home loan account numbers.",
        "parameters": [
          {
            "name": "userId",
            "required": true,
            "in": "path",
            "description": "Spinwheel userId to identify a user (one of userId or extUserId is required).",
            "example": "3fef7131-71ae-4204-a8bd-3fc3ad6b4b82",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "homeLoanId",
            "required": true,
            "in": "path",
            "description": "Spinwheel home loan ID associated with the user.",
            "example": "12b9d6e8-c87b-415e-94e2-15367975218d",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateLiabilityRequest"
              },
              "examples": {
                "Updating account number": {
                  "description": "Updating account number",
                  "value": {
                    "liabilityProfile": {
                      "accountNumber": "0045678901234"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateHomeLoanResponse"
                },
                "examples": {
                  "Response with a home loan": {
                    "description": "Response with a home loan",
                    "value": {
                      "status": {
                        "code": 200,
                        "desc": "success"
                      },
                      "data": {
                        "homeLoanId": "7025c075-e92d-46fa-85e5-ac31ca667079",
                        "userId": "3fef7131-71ae-4204-a8bd-3fc3ad6b4b82",
                        "displayName": "TD Bank",
                        "logoUrl": "https://cdn.spinwheel.io/images/logo/ebd6dab9-4558-40c4-8c21-65070a07df5a.png",
                        "liabilityProfile": {
                          "accountNumber": "0045678901234",
                          "accountOriginationDate": "2018-03-15",
                          "status": "OPEN",
                          "interestRateDerived": 3.75,
                          "loanOriginationAmount": 350000,
                          "accountRating": "1",
                          "liabilitySubtype": "Mortgage",
                          "debtType": "SECURED",
                          "loanTermInMonths": 360,
                          "accountOwnershipType": "INDIVIDUAL",
                          "termsFrequency": "MONTHLY",
                          "ecoaCode": "I",
                          "accountType": "INSTALLMENT",
                          "consumerDisputeStatus": "NOT_DISPUTED",
                          "derogatoryDataStatus": "NOT_DEROGATORY",
                          "collectionStatus": "NOT_IN_COLLECTION",
                          "chargeOffStatus": "NOT_CHARGED_OFF"
                        },
                        "balanceDetails": {
                          "outstandingBalance": 285000,
                          "updatedOn": 1597753517524
                        },
                        "statementSummary": {
                          "statementBalance": 285000,
                          "minimumPaymentAmount": 1650,
                          "overduePeriod": "NOT_OVERDUE"
                        },
                        "creditor": {
                          "originalName": "TD BANK",
                          "industryType": "MortgageBanking",
                          "industryCode": "FB",
                          "phoneNumber": "8663968254",
                          "bureauSubscriberCode": "401BB00573",
                          "address": {
                            "addressLine1": "C/O P.O. BOX 965036",
                            "city": "ORLANDO",
                            "state": "FL",
                            "zip": "32896",
                            "zipExtension": "5036"
                          }
                        },
                        "capabilities": {
                          "payments": {
                            "billPayment": {
                              "availability": "SUPPORTED"
                            }
                          },
                          "data": {
                            "realtimeBalance": {
                              "availability": "NOT_SUPPORTED"
                            },
                            "statementSummary": {
                              "availability": "SUPPORTED"
                            }
                          }
                        },
                        "createdOn": 1597317116353,
                        "updatedOn": 1597753517524
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedResponse"
                }
              }
            }
          },
          "404": {
            "description": "Not found response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                },
                "examples": {
                  "User Not Found": {
                    "value": {
                      "status": {
                        "code": 404,
                        "desc": "User not found",
                        "messages": []
                      }
                    }
                  },
                  "Home Loan Not Found": {
                    "value": {
                      "status": {
                        "code": 404,
                        "desc": "HOME_LOAN not found",
                        "messages": []
                      }
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal server error response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InternalServerErrorResponse"
                },
                "examples": {
                  "Update Failed": {
                    "value": {
                      "status": {
                        "code": 500,
                        "desc": "Unable to update home loan [homeLoanId=3fa85f64-5717-4562-b3fc-2c963f66afa6] belonging to user [id=1c9d0f64-1234-4562-b3fc-2c963f66afad]",
                        "messages": []
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "User Management"
        ],
        "security": [
          {
            "bearerAuth": []
          }
        ]
      }
    }
  },
  "info": {
    "title": "Optimize",
    "description": "Welcome to Spinwheel's documentation! ",
    "version": "1.0",
    "contact": {}
  },
  "tags": [
    {
      "name": "User Management"
    }
  ],
  "servers": [
    {
      "url": "https://sandbox-api.spinwheel.io"
    },
    {
      "url": "https://api.spinwheel.io"
    },
    {
      "url": "https://secure-api.spinwheel.io"
    },
    {
      "url": "https://secure-sandbox-api.spinwheel.io"
    }
  ],
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization",
        "description": "Once you've created a Spinwheel account and received credentials, you can access all of Spinwheel's APIs using a server-to-server call (in order to protect your credentials). When calling an API simply include your secretKey as a bearer token in an auth header like so: \n\n `Authorization: Bearer 8ae8d6fa-df8d-4c5d-9f9b-c4e4c10968b0`"
      }
    },
    "schemas": {
      "BadRequest": {
        "type": "object",
        "properties": {
          "code": {
            "type": "number",
            "example": 400
          },
          "desc": {
            "type": "string",
            "example": "Bad request"
          }
        },
        "required": [
          "code",
          "desc"
        ]
      },
      "BadRequestResponse": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/BadRequest"
          }
        },
        "required": [
          "status"
        ]
      },
      "Unauthorized": {
        "type": "object",
        "properties": {
          "code": {
            "type": "number",
            "example": 401
          },
          "desc": {
            "type": "string",
            "example": "Invalid private key"
          }
        },
        "required": [
          "code",
          "desc"
        ]
      },
      "UnauthorizedResponse": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/Unauthorized"
          }
        },
        "required": [
          "status"
        ]
      },
      "NotFound": {
        "type": "object",
        "properties": {
          "code": {
            "type": "number",
            "example": 404
          },
          "desc": {
            "type": "string",
            "example": "Resource not found"
          }
        },
        "required": [
          "code",
          "desc"
        ]
      },
      "NotFoundResponse": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/NotFound"
          }
        },
        "required": [
          "status"
        ]
      },
      "InternalServerError": {
        "type": "object",
        "properties": {
          "code": {
            "type": "number",
            "example": 500
          },
          "desc": {
            "type": "string",
            "example": "Internal server error"
          }
        },
        "required": [
          "code",
          "desc"
        ]
      },
      "InternalServerErrorResponse": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/InternalServerError"
          }
        },
        "required": [
          "status"
        ]
      },
      "Message": {
        "type": "object",
        "properties": {
          "desc": {
            "type": "string",
            "example": "Example status description"
          },
          "type": {
            "enum": [
              "ERROR",
              "WARN",
              "INFO"
            ],
            "type": "string",
            "example": "ERROR"
          }
        },
        "required": [
          "desc"
        ]
      },
      "ResponseStatus": {
        "type": "object",
        "properties": {
          "code": {
            "type": "number",
            "example": 200
          },
          "desc": {
            "type": "string",
            "example": "success"
          },
          "messages": {
            "example": [
              {
                "desc": "Example description"
              }
            ],
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Message"
            }
          }
        }
      },
      "Address": {
        "type": "object",
        "properties": {
          "addressLine1": {
            "type": "string",
            "maxLength": 50,
            "example": "123 Main Street"
          },
          "addressLine2": {
            "type": "string",
            "maxLength": 50,
            "example": "Unit 208"
          },
          "city": {
            "type": "string",
            "maxLength": 50,
            "example": "San Francisco"
          },
          "state": {
            "type": "string",
            "enum": [
              "AL",
              "AK",
              "AZ",
              "AR",
              "CA",
              "CO",
              "CT",
              "DC",
              "DE",
              "FL",
              "GA",
              "HI",
              "ID",
              "IL",
              "IN",
              "IA",
              "KS",
              "KY",
              "LA",
              "ME",
              "MD",
              "MA",
              "MI",
              "MN",
              "MS",
              "MO",
              "MT",
              "Ne",
              "NE",
              "NV",
              "NH",
              "NJ",
              "NM",
              "NY",
              "NC",
              "ND",
              "OH",
              "OK",
              "OR",
              "PA",
              "RI",
              "SC",
              "SD",
              "TN",
              "TX",
              "UT",
              "VT",
              "VA",
              "WA",
              "WV",
              "WI",
              "WY"
            ],
            "example": "CA"
          },
          "zip": {
            "type": "string",
            "minLength": 5,
            "maxLength": 5,
            "example": "90211"
          },
          "zipExtension": {
            "type": "string",
            "minLength": 4,
            "maxLength": 4,
            "example": "1234"
          }
        },
        "required": [
          "addressLine1",
          "city",
          "state",
          "zip"
        ]
      },
      "DateWithFormat": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "Date value in format YYYY-MM-DD or YYYY-MM or YYYY",
            "example": "2020-01-01",
            "format": "date"
          },
          "format": {
            "type": "string",
            "description": "Format of the date value. Possible values: YYYY-MM-DD, YYYY-MM, YYYY",
            "example": "YYYY-MM-DD"
          }
        },
        "required": [
          "value",
          "format"
        ]
      },
      "Narratives": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Narrative's code",
            "example": "EP"
          },
          "description": {
            "type": "string",
            "description": "Narrative's description",
            "example": "Fixed rate"
          }
        }
      },
      "LiabilityTransfer": {
        "type": "object",
        "properties": {
          "creditorName": {
            "type": "string",
            "description": "Creditor name",
            "example": "MASTERCARD"
          }
        },
        "required": [
          "creditorName"
        ]
      },
      "LiabilityTransfers": {
        "type": "object",
        "properties": {
          "transferredFrom": {
            "description": "Represents the liability details from where the liability has been transferred",
            "allOf": [
              {
                "$ref": "#/components/schemas/LiabilityTransfer"
              }
            ]
          },
          "transferredTo": {
            "description": "Represents the liability details to where the liability has been transferred",
            "allOf": [
              {
                "$ref": "#/components/schemas/LiabilityTransfer"
              }
            ]
          }
        }
      },
      "PaymentHistoryDetails": {
        "type": "object",
        "properties": {
          "date": {
            "format": "date",
            "type": "string",
            "description": "Date of billing period",
            "example": "2020-01-01"
          },
          "description": {
            "type": "string",
            "description": "Description of the payment",
            "example": "The account is current"
          },
          "code": {
            "enum": [
              "0",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "G",
              "H",
              "J",
              "R",
              "L",
              "E",
              "B",
              "D"
            ],
            "type": "string",
            "description": "Code representing the payment status",
            "example": "1"
          }
        }
      },
      "PaymentHistory": {
        "type": "object",
        "properties": {
          "lastAssessedStatementDate": {
            "format": "date",
            "type": "string",
            "description": "Date of the last assessed statement",
            "example": "2020-01-01"
          },
          "details": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PaymentHistoryDetails"
            }
          }
        }
      },
      "LiabilityBalanceDetails": {
        "type": "object",
        "properties": {
          "outstandingBalance": {
            "type": "number",
            "description": "Current balance on the account",
            "example": 2500
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1597753517524
          }
        }
      },
      "LiabilityStatementSummary": {
        "type": "object",
        "properties": {
          "statementDateWithFormat": {
            "description": "Date of the statement with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "statementBalance": {
            "type": "number",
            "description": "Total balance on the statement",
            "example": 7469
          },
          "principalBalance": {
            "type": "number",
            "description": "Principal balance on the loan",
            "example": 2535
          },
          "minimumPaymentAmount": {
            "type": "number",
            "description": "Minimum amount due for payment",
            "example": 100
          },
          "lastPaymentDateWithFormat": {
            "description": "Date of last payment with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "dueDate": {
            "format": "date",
            "type": "string",
            "description": "Due date for the next payment",
            "example": "2023-04-10"
          },
          "overduePeriod": {
            "enum": [
              "LATE_30_DAYS",
              "LATE_60_DAYS",
              "LATE_90_DAYS",
              "LATE_120_DAYS",
              "NOT_OVERDUE"
            ],
            "type": "string",
            "description": "Overdue period status"
          },
          "amountPastDue": {
            "type": "number",
            "description": "Amount past due",
            "example": 100
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1597753517524
          }
        }
      },
      "BillingAddress": {
        "type": "object",
        "properties": {
          "addressLine1": {
            "type": "string",
            "maxLength": 50,
            "example": "123 Main Street"
          },
          "addressLine2": {
            "type": "string",
            "maxLength": 50,
            "example": "Unit 208"
          },
          "city": {
            "type": "string",
            "maxLength": 50,
            "example": "San Francisco"
          },
          "state": {
            "type": "string",
            "enum": [
              "AL",
              "AK",
              "AZ",
              "AR",
              "CA",
              "CO",
              "CT",
              "DC",
              "DE",
              "FL",
              "GA",
              "HI",
              "ID",
              "IL",
              "IN",
              "IA",
              "KS",
              "KY",
              "LA",
              "ME",
              "MD",
              "MA",
              "MI",
              "MN",
              "MS",
              "MO",
              "MT",
              "Ne",
              "NE",
              "NV",
              "NH",
              "NJ",
              "NM",
              "NY",
              "NC",
              "ND",
              "OH",
              "OK",
              "OR",
              "PA",
              "RI",
              "SC",
              "SD",
              "TN",
              "TX",
              "UT",
              "VT",
              "VA",
              "WA",
              "WV",
              "WI",
              "WY"
            ],
            "example": "CA"
          },
          "zip": {
            "type": "string",
            "minLength": 5,
            "maxLength": 5,
            "example": "90211"
          },
          "zipExtension": {
            "type": "string",
            "minLength": 4,
            "maxLength": 4,
            "example": "1234"
          },
          "reportedDate": {
            "format": "date-time",
            "type": "string",
            "description": "Date when this address was reported",
            "example": "2023-09-20T00:00:00.000Z"
          },
          "reportedDateWithFormat": {
            "description": "Date when this address was reported with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "addressType": {
            "enum": [
              "PREVIOUS",
              "CURRENT"
            ],
            "type": "string",
            "description": "Type of address (current/previous)",
            "example": "CURRENT"
          }
        },
        "required": [
          "addressLine1",
          "city",
          "state",
          "zip"
        ]
      },
      "Creditor": {
        "type": "object",
        "properties": {
          "industryType": {
            "type": "string",
            "description": "Industry type of the creditor",
            "example": "SalesFinancing"
          },
          "industryCode": {
            "type": "string",
            "description": "Industry code of the creditor",
            "example": "FF"
          },
          "phoneNumber": {
            "type": "string",
            "description": "Creditor phone number",
            "example": "8663968254"
          },
          "originalName": {
            "type": "string",
            "description": "Creditor original name",
            "example": "TD BANK"
          },
          "bureauSubscriberCode": {
            "type": "string",
            "description": "Creditor subscriber code",
            "example": "401BB00573"
          },
          "billingAddresses": {
            "description": "Previous and current billing addresses",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BillingAddress"
            }
          },
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "billingAddress": {
            "$ref": "#/components/schemas/Address"
          }
        }
      },
      "FieldError": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string",
            "description": "The field associated with the error."
          },
          "error": {
            "type": "string",
            "description": "The reason for the error."
          }
        },
        "required": [
          "field",
          "error"
        ]
      },
      "Capability": {
        "type": "object",
        "properties": {
          "availability": {
            "type": "string",
            "description": "The availability status of a capability",
            "enum": [
              "NOT_SUPPORTED",
              "SUPPORTED",
              "FIELD_ERROR"
            ]
          },
          "fieldErrors": {
            "description": "Field-level errors if applicable.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldError"
            }
          },
          "description": {
            "type": "string",
            "description": "Description of why the capability is not supported, if applicable.",
            "enum": [
              "INSTITUTION_NOT_SUPPORTED",
              "INSTITUTION_DISABLED",
              "REFRESH_EXHAUSTED",
              "NOT_PRIMARY_ACCOUNT_HOLDER",
              "ACCOUNT_TERMINATED",
              "CLOSED_ACCOUNT_NO_BALANCE",
              "CLOSED_ACCOUNT",
              "ACCOUNT_NUMBER_VERIFICATION_FAILED"
            ]
          },
          "nextEligibleRefreshOn": {
            "type": "number",
            "description": "The earliest timestamp that the capability will be available, if applicable."
          },
          "liabilityGroupId": {
            "type": "string",
            "description": "Unique identifier of the liability group for the capability."
          }
        },
        "required": [
          "availability"
        ]
      },
      "PaymentsCapability": {
        "type": "object",
        "properties": {
          "billPayment": {
            "description": "The ability to make a Bill payment",
            "allOf": [
              {
                "$ref": "#/components/schemas/Capability"
              }
            ]
          },
          "pushToCard": {
            "description": "The ability to make a Push To Card payment",
            "allOf": [
              {
                "$ref": "#/components/schemas/Capability"
              }
            ]
          },
          "receiveOnlyPayment": {
            "description": "The ability to receive payments",
            "allOf": [
              {
                "$ref": "#/components/schemas/Capability"
              }
            ]
          }
        },
        "required": [
          "billPayment"
        ]
      },
      "DataCapability": {
        "type": "object",
        "properties": {
          "realtimeBalance": {
            "description": "The capability to access real-time balance data.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Capability"
              }
            ]
          },
          "payoffSummary": {
            "description": "The capability to access pay-off summary data.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Capability"
              }
            ]
          },
          "liabilityGroupPayoffQuote": {
            "description": "The capability to access payoff quotes.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Capability"
              }
            ]
          },
          "statementSummary": {
            "description": "The capability to access statement summary data.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Capability"
              }
            ]
          },
          "annualPercentageRate": {
            "description": "The capability to access annual percentage rate data.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Capability"
              }
            ]
          }
        },
        "required": [
          "realtimeBalance"
        ]
      },
      "CapabilityMatrix": {
        "type": "object",
        "properties": {
          "payments": {
            "description": "Payment-related capabilities, if available.",
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentsCapability"
              }
            ]
          },
          "data": {
            "description": "Data-related capabilities, if available.",
            "allOf": [
              {
                "$ref": "#/components/schemas/DataCapability"
              }
            ]
          }
        }
      },
      "LiabilityProfileWithAccountNumber": {
        "type": "object",
        "properties": {
          "accountOriginationDate": {
            "format": "date",
            "type": "string",
            "description": "Date of account origination",
            "example": "2023-01-15"
          },
          "status": {
            "enum": [
              "OPEN",
              "CLOSED"
            ],
            "type": "string",
            "description": "Liability status"
          },
          "interestRateDerived": {
            "type": "number",
            "description": "Interest rate derived",
            "example": 3.5
          },
          "loanOriginationAmount": {
            "type": "number",
            "description": "Loan origination amount",
            "example": 5000
          },
          "highCreditAmount": {
            "type": "number",
            "description": "Represents the highest balance or amount of credit owed on a specific account during a specific period, as reported by the creditor",
            "example": 5000
          },
          "accountRating": {
            "type": "string",
            "description": "Account rating",
            "example": "1"
          },
          "liabilitySubtype": {
            "type": "string",
            "description": "Subtype of liability",
            "example": "ConventionalRealEstateMortgage"
          },
          "debtType": {
            "enum": [
              "SECURED",
              "UNSECURED",
              "UNKNOWN"
            ],
            "type": "string",
            "description": "The type of debt. This field indicates whether the debt is secured or unsecured."
          },
          "pendingLoanTermInMonthsDerived": {
            "type": "number",
            "description": "Pending loan term in months derived",
            "example": 83
          },
          "loanTermInMonths": {
            "type": "number",
            "description": "Loan term in months",
            "example": 93
          },
          "termsFrequency": {
            "enum": [
              "BIWEEKLY",
              "DEFERRED",
              "SEMI_MONTHLY",
              "BI_MONTHLY",
              "MONTHLY",
              "SINGLE_PAYMENT_LOAN",
              "QUARTERLY",
              "SEMI_ANNUALLY",
              "TRI_ANNUALLY",
              "WEEKLY",
              "ANNUALLY"
            ],
            "type": "string",
            "description": "Indicates how often payments are due"
          },
          "closedDateWithFormat": {
            "description": "Date when the account was closed with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "accountOwnershipType": {
            "enum": [
              "AUTHORIZED_USER",
              "COMAKER",
              "INDIVIDUAL",
              "JOINT_CONTRACTUAL_LIABILITY",
              "JOINT_PARTICIPATING",
              "MAKER",
              "ON_BEHALF_OF",
              "TERMINATED",
              "UNDESIGNATED",
              "DECEASED"
            ],
            "type": "string",
            "description": "Type of account ownership"
          },
          "ecoaCode": {
            "enum": [
              "I",
              "J",
              "A",
              "C",
              "M",
              "T",
              "X"
            ],
            "type": "string",
            "description": "This field represents the Equal Credit Opportunity Act code for a particular liability. Where it can be represented as both a letter and a number, we opt to display the letter"
          },
          "reviewedInMonths": {
            "type": "number",
            "description": "Number of months the account has been reviewed",
            "example": 6
          },
          "reportedDateWithFormat": {
            "description": "Date when the account reported with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "accountType": {
            "enum": [
              "CREDIT_LINE",
              "INSTALLMENT",
              "MORTGAGE",
              "OPEN",
              "REVOLVING",
              "UNKNOWN"
            ],
            "type": "string",
            "description": "Type of account"
          },
          "consumerDisputeStatus": {
            "enum": [
              "DISPUTED",
              "NOT_DISPUTED"
            ],
            "type": "string",
            "description": "Consumer dispute status"
          },
          "derogatoryDataStatus": {
            "enum": [
              "DEROGATORY",
              "NOT_DEROGATORY"
            ],
            "type": "string",
            "description": "Status of derogatory data"
          },
          "collectionStatus": {
            "enum": [
              "IN_COLLECTION",
              "NOT_IN_COLLECTION"
            ],
            "type": "string",
            "description": "Collection status"
          },
          "chargeOffStatus": {
            "enum": [
              "CHARGED_OFF",
              "NOT_CHARGED_OFF"
            ],
            "type": "string",
            "description": "Charge-off status"
          },
          "chargeOffAmount": {
            "type": "number",
            "description": "Charge-off amount",
            "example": 5000
          },
          "chargeOffDateWithFormat": {
            "description": "Charge-off date with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "firstDelinquencyDateWithFormat": {
            "description": "First delinquency date with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "lastActivityDateWithFormat": {
            "description": "Date of last activity on the account",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "accountTypeCode": {
            "type": "string",
            "description": "Account type code",
            "example": "O"
          },
          "highestAdverseRating": {
            "enum": [
              "0",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "G",
              "H",
              "J",
              "R",
              "L",
              "E",
              "B",
              "D"
            ],
            "type": "string",
            "description": "Highest adverse rating"
          },
          "highestAdverseRatingDateWithFormat": {
            "description": "Highest adverse rating date with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "mostRecentAdverseRating": {
            "enum": [
              "0",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "G",
              "H",
              "J",
              "R",
              "L",
              "E",
              "B",
              "D"
            ],
            "type": "string",
            "description": "Most recent adverse rating"
          },
          "mostRecentAdverseRatingDateWithFormat": {
            "description": "Most recent adverse rating date with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "secondMostRecentAdverseRating": {
            "enum": [
              "0",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6",
              "G",
              "H",
              "J",
              "R",
              "L",
              "E",
              "B",
              "D"
            ],
            "type": "string",
            "description": "Second most recent adverse rating"
          },
          "secondMostRecentAdverseRatingDateWithFormat": {
            "description": "Second most recent adverse rating date with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "adverseRatingCount": {
            "type": "number",
            "description": "Total count of adverse ratings",
            "example": 2
          },
          "liabilityTransfers": {
            "description": "The liability transfer object records the details of liability transfers between creditors, allowing the tracking of debt servicing history among different creditors.",
            "allOf": [
              {
                "$ref": "#/components/schemas/LiabilityTransfers"
              }
            ]
          },
          "narratives": {
            "description": "Details about consumer account narratives",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Narratives"
            }
          },
          "accountNumberLastFour": {
            "type": "string",
            "description": "Last four digits of the account number. For accounts with fewer than four digits, the full account number is returned. This field is only returned for non-credit card liability types (auto loans, student loans, home loans, personal loans, and miscellaneous liabilities).",
            "example": "1234"
          },
          "accountNumber": {
            "type": "string",
            "description": "Full account number",
            "example": "0045678901234"
          },
          "paymentHistory": {
            "$ref": "#/components/schemas/PaymentHistory"
          }
        }
      },
      "LiabilityProfileRequest": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string",
            "example": "0045678901234"
          }
        },
        "required": [
          "accountNumber"
        ]
      },
      "UpdateLiabilityRequest": {
        "type": "object",
        "properties": {
          "liabilityProfile": {
            "$ref": "#/components/schemas/LiabilityProfileRequest"
          }
        },
        "required": [
          "liabilityProfile"
        ]
      },
      "UpdateHomeLoan": {
        "type": "object",
        "properties": {
          "homeLoanId": {
            "type": "string",
            "description": "Unique identifier for the home loan",
            "example": "7025c075-e92d-46fa-85e5-ac31ca667079"
          },
          "logoUrl": {
            "type": "string",
            "description": "Logo URL for the institution",
            "example": "https://spinwheel.io/logos/1226cd1b-51dd-4bd1-8dc8-098deb9e0c7b.png"
          },
          "displayName": {
            "type": "string",
            "description": "Name of the institution",
            "example": "TD Bank"
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1597753517524
          },
          "createdOn": {
            "type": "number",
            "description": "Timestamp of the creation",
            "example": 1597753517524
          },
          "userId": {
            "type": "string",
            "example": "3fef7131-71ae-4204-a8bd-3fc3ad6b4b82"
          },
          "liabilityProfile": {
            "$ref": "#/components/schemas/LiabilityProfileWithAccountNumber"
          },
          "balanceDetails": {
            "$ref": "#/components/schemas/LiabilityBalanceDetails"
          },
          "statementSummary": {
            "$ref": "#/components/schemas/LiabilityStatementSummary"
          },
          "creditor": {
            "$ref": "#/components/schemas/Creditor"
          },
          "capabilities": {
            "$ref": "#/components/schemas/CapabilityMatrix"
          }
        },
        "required": [
          "homeLoanId",
          "logoUrl",
          "userId",
          "liabilityProfile",
          "balanceDetails",
          "statementSummary",
          "capabilities"
        ]
      },
      "UpdateHomeLoanResponse": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/ResponseStatus"
          },
          "data": {
            "$ref": "#/components/schemas/UpdateHomeLoan"
          }
        },
        "required": [
          "status",
          "data"
        ]
      }
    }
  }
}
```