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

# Update a Student Loan

This API updates user records with accurate student loan account numbers and correct billing addresses to ensure proper payments to institutions.

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "paths": {
    "/v1/users/{userId}/studentLoans/{studentLoanId}": {
      "patch": {
        "operationId": "Update Student Loan",
        "summary": "Update a Student Loan",
        "description": "This API updates user records with accurate student loan account numbers and correct billing addresses to ensure proper payments to institutions.",
        "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": "studentLoanId",
            "required": true,
            "in": "path",
            "description": "Spinwheel student 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/UpdateStudentLoanRequest"
              },
              "examples": {
                "Updating account number and billing address": {
                  "description": "Updating account number and billing address",
                  "value": {
                    "accountNumber": "3456789877",
                    "creditor": {
                      "billingAddress": {
                        "addressLine1": "123 Main Street",
                        "addressLine2": "Unit 208",
                        "city": "San Francisco",
                        "state": "CA",
                        "zip": "90211",
                        "zipExtension": "1234"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserProfileResponse"
                },
                "examples": {
                  "Response with student loans": {
                    "description": "Response with student loans",
                    "value": {
                      "status": {
                        "code": 200,
                        "desc": "success"
                      },
                      "data": {
                        "userId": "fb16f6f7-8268-4d78-8ee9-9be93bc9b2a1",
                        "extUserId": "443115a2-c289-4153-aa0b-e2a5312df76d",
                        "isBorrower": false,
                        "isChampion": false,
                        "updatedOn": 1678724487194,
                        "createdOn": 1678724465287,
                        "studentLoanAccounts": [],
                        "profile": {
                          "firstName": "CHRISTY",
                          "middleName": "L",
                          "lastName": "JENOVAL",
                          "phoneNumber": "+19198094325",
                          "ssnLastFourDigits": "1234",
                          "addresses": [
                            {
                              "addressLine1": "21 Pacific St",
                              "city": "Pittsfield",
                              "state": "MA",
                              "zip": "01201-3918"
                            }
                          ],
                          "dob": "1967-06-08",
                          "creditScore": 691
                        },
                        "studentLoanSummary": {
                          "noOfLoans": 2,
                          "currentOutstandingBalance": 6268,
                          "minimumPaymentAmount": 229,
                          "updatedOn": 1678724487132
                        },
                        "creditReports": [
                          {
                            "id": "54b1918e-e232-4ef0-9ae3-b85d4d29ff3e",
                            "profile": {
                              "firstName": "CHRISTY",
                              "middleName": "L",
                              "lastName": "JENOVAL",
                              "creditScore": 691,
                              "dateOfBirth": "1967-06-08",
                              "ssn": "6112",
                              "addresses": [
                                {
                                  "addressLine1": "305 LINDEN AVE",
                                  "city": "ATLANTA",
                                  "state": "GA",
                                  "zip": "30316",
                                  "residencyType": "CURRENT",
                                  "residencyDurationInMonths": 2,
                                  "reportedDate": "2022-05-04"
                                },
                                {
                                  "addressLine1": "712 MCDOUNGH RD",
                                  "city": "HAMPTON",
                                  "state": "GA",
                                  "zip": "30228",
                                  "residencyType": "PREVIOUS",
                                  "residencyDurationInMonths": 2,
                                  "reportedDate": "2022-03-02"
                                },
                                {
                                  "addressLine1": "PO BOX 30",
                                  "city": "HELEN",
                                  "state": "GA",
                                  "zip": "30545",
                                  "residencyType": "PREVIOUS",
                                  "residencyDurationInMonths": 2,
                                  "reportedDate": "2022-03-27"
                                },
                                {
                                  "addressLine1": "1260 NELMS RD",
                                  "city": "CARNESVILLE",
                                  "state": "GA",
                                  "zip": "30521",
                                  "residencyType": "PREVIOUS",
                                  "residencyDurationInMonths": 2,
                                  "reportedDate": "2022-03-27"
                                },
                                {
                                  "addressLine1": "2732 SENECA ST 1FLRR",
                                  "city": "MARIETTA",
                                  "state": "GA",
                                  "zip": "30062",
                                  "residencyType": "PREVIOUS",
                                  "residencyDurationInMonths": 1
                                }
                              ],
                              "employmentHistory": [
                                {
                                  "employerName": "Acme Inc",
                                  "startDateWithFormat": {
                                    "value": "2022-05",
                                    "format": "YYYY-MM"
                                  },
                                  "reportedDateWithFormat": {
                                    "value": "2022-05",
                                    "format": "YYYY-MM"
                                  },
                                  "employmentStatus": "CURRENT"
                                },
                                {
                                  "position": "Software Engineer",
                                  "startDateWithFormat": {
                                    "value": "2020-05-01",
                                    "format": "YYYY-MM"
                                  },
                                  "employmentStatus": "PREVIOUS"
                                }
                              ],
                              "updatedOn": 1678724487191,
                              "createdOn": 1678724480988
                            },
                            "inquiries": [
                              {
                                "inquirerName": "MBGA",
                                "phoneNumber": "1234567890",
                                "inquiryDate": "2020-08-13",
                                "inquirerIndustryCode": "H",
                                "purposeType": "HARD",
                                "sourceBureau": "Equifax",
                                "bureauSubscriberCode": "404HA00354",
                                "address": {
                                  "addressLine1": "BR. C GIM-REGION TP",
                                  "city": "ROSWELL",
                                  "state": "GA",
                                  "zip": "30076"
                                }
                              }
                            ],
                            "creditScoreDetails": [
                              {
                                "reportedDate": "2022-05-06",
                                "riskBasedPricingPercentage": 40,
                                "riskBasedPricingMin": 691,
                                "riskBasedPricingMax": 694,
                                "creditScore": 691,
                                "modelName": "EquifaxVantageScore3.0",
                                "sourceBureau": "Equifax",
                                "factors": [
                                  {
                                    "description": "Available credit on your open bankcard or revolving accounts is too low",
                                    "code": "39"
                                  },
                                  {
                                    "description": "Total of all balances on bankcard or revolving accounts is too high",
                                    "code": "34"
                                  },
                                  {
                                    "description": "You have too many delinquent or derogatory accounts",
                                    "code": "7"
                                  },
                                  {
                                    "description": "You have too many inquiries on your credit report.",
                                    "code": "85"
                                  }
                                ]
                              }
                            ],
                            "creditAttributes": [
                              {
                                "description": "Number of tradelines",
                                "value": "24"
                              },
                              {
                                "description": "Average age of open tradelines",
                                "value": "81"
                              },
                              {
                                "description": "Number of hard inquiries",
                                "value": "63"
                              },
                              {
                                "description": "Number of payments",
                                "value": "5"
                              }
                            ],
                            "updatedOn": 1678724487204,
                            "createdOn": 1678724480988,
                            "connectionStatus": {
                              "statusCode": 2000,
                              "description": "Authentication is successful.",
                              "lastAuthAttemptOn": 1678724481033,
                              "isAuthSuccessful": true,
                              "isValid": true,
                              "isSecurityStepPending": false,
                              "statusChangeLogs": [],
                              "lastSuccessfulAuthOn": 1678724481033,
                              "dataStatus": {
                                "status": "COMPLETED",
                                "updatedOn": 1678724487181
                              }
                            }
                          }
                        ],
                        "studentLoans": [
                          {
                            "studentLoanId": "18cf0dcb-41ef-498b-b340-eef4f5e7fcb0",
                            "displayName": "Nelnet Loan Services",
                            "logoUrl": "https://cdn.spinwheel.io/images/logo/ebd6dab9-4558-40c4-8c21-65070a07df5a.png",
                            "accountNumber": "3456789877",
                            "liabilityProfile": {
                              "ecoaCode": "I",
                              "accountOriginationDate": "2020-12-08",
                              "status": "OPEN",
                              "interestRateDerived": 0.1122,
                              "loanOriginationAmount": 5174,
                              "accountRating": "1",
                              "accountNumber": "3456789877",
                              "liabilitySubtype": "Educational",
                              "loanType": "UNVERIFIED",
                              "pendingLoanTermInMonthsDerived": 40,
                              "loanTermInMonths": 40,
                              "accountOwnershipType": "INDIVIDUAL",
                              "termsFrequency": "MONTHLY",
                              "accountType": "INSTALLMENT",
                              "reportedDateWithFormat": {
                                "value": "2022-03-08",
                                "format": "YYYY-MM-DD"
                              },
                              "lastActivityDateWithFormat": {
                                "value": "2022-03-08",
                                "format": "YYYY-MM-DD"
                              },
                              "consumerDisputeStatus": "NOT_DISPUTED",
                              "derogatoryDataStatus": "NOT_DEROGATORY",
                              "reviewedInMonths": 0,
                              "collectionStatus": "NOT_IN_COLLECTION",
                              "chargeOffStatus": "NOT_CHARGED_OFF",
                              "accountTypeCode": "I"
                            },
                            "balanceDetails": {
                              "outstandingBalance": 3941
                            },
                            "statementSummary": {
                              "statementBalance": 3941,
                              "principalBalance": 3941,
                              "minimumPaymentAmount": 131,
                              "lastPaymentDateWithFormat": {
                                "value": "2022-02",
                                "format": "YYYY-MM"
                              },
                              "statementDateWithFormat": {
                                "value": "2022-03",
                                "format": "YYYY-MM"
                              },
                              "overduePeriod": "NOT_OVERDUE"
                            },
                            "creditor": {
                              "industryType": "AllBanks",
                              "industryCode": "BB",
                              "phoneNumber": "4048277100",
                              "originalName": "NELNET LOAN SERVICES",
                              "bureauSubscriberCode": "401BB00573",
                              "address": {
                                "addressLine1": "P.O. BOX 3117",
                                "city": "WINSTON-SALEM",
                                "state": "NC",
                                "zip": "27102"
                              },
                              "billingAddress": {
                                "addressLine1": "123 Main Street",
                                "addressLine2": "Unit 208",
                                "city": "San Francisco",
                                "state": "CA",
                                "zip": "90211",
                                "zipExtension": "1234"
                              }
                            },
                            "capabilities": {
                              "payments": {
                                "billPayment": {
                                  "availability": "SUPPORTED"
                                }
                              }
                            },
                            "updatedOn": 1678724487099,
                            "createdOn": 1678724487099
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "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": []
                      }
                    }
                  },
                  "Student Loan Not Found": {
                    "value": {
                      "status": {
                        "code": 404,
                        "desc": "Student 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 student loan [studentLoanId=3fa85f64-5717-4562-b3fc-2c963f66afa6] belonging to user [id=1c9d0f64-1234-4562-b3fc-2c963f66afad]",
                        "messages": []
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "User Management"
        ]
      }
    }
  },
  "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": {
    "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"
        ]
      },
      "ProfileUser": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "description": "First name"
          },
          "middleName": {
            "type": "string",
            "description": "Middle name"
          },
          "lastName": {
            "type": "string",
            "description": "Last name"
          },
          "emailAddress": {
            "type": "string",
            "description": "Email address"
          },
          "creditScore": {
            "type": "number",
            "description": "Credit score"
          },
          "model": {
            "enum": [
              "VANTAGE_SCORE_3_0",
              "FICO_SCORE_4",
              "FICO_SCORE_8"
            ],
            "type": "string",
            "description": "Scoring model",
            "example": "VANTAGE_SCORE_3_0"
          },
          "dob": {
            "type": "string",
            "description": "Date of birth"
          },
          "phoneNumber": {
            "type": "string",
            "description": "Phone number"
          },
          "ssnLastFourDigits": {
            "type": "string",
            "description": "Last 4 digits of the ssn",
            "example": "1234"
          },
          "ssn": {
            "type": "string"
          },
          "addresses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Address"
            }
          }
        },
        "required": [
          "firstName",
          "lastName",
          "ssnLastFourDigits"
        ]
      },
      "AutoLoanSummary": {
        "type": "object",
        "properties": {
          "noOfLoans": {
            "type": "number",
            "example": 5
          },
          "currentOutstandingBalance": {
            "type": "number",
            "example": 5
          },
          "minimumPaymentAmount": {
            "type": "number",
            "example": 5000
          },
          "interestRate": {
            "type": "number",
            "example": 2.1
          },
          "interestRateDerived": {
            "type": "number",
            "example": 2.1
          },
          "updatedOn": {
            "type": "number",
            "example": 1643917895192
          },
          "createdOn": {
            "type": "number",
            "example": 1643917895192
          }
        },
        "required": [
          "noOfLoans",
          "currentOutstandingBalance",
          "minimumPaymentAmount"
        ]
      },
      "HomeLoanSummary": {
        "type": "object",
        "properties": {
          "noOfLoans": {
            "type": "number",
            "example": 3
          },
          "currentOutstandingBalance": {
            "type": "number",
            "example": 1232.12
          },
          "minimumPaymentAmount": {
            "type": "number",
            "example": 250
          },
          "interestRate": {
            "type": "number",
            "example": 3.4
          },
          "interestRateDerived": {
            "type": "number",
            "example": 3.4
          },
          "updatedOn": {
            "type": "number",
            "example": 1643917895192
          },
          "createdOn": {
            "type": "number",
            "example": 1643917895192
          }
        },
        "required": [
          "noOfLoans",
          "currentOutstandingBalance",
          "minimumPaymentAmount"
        ]
      },
      "MiscellaneousLiabilitySummary": {
        "type": "object",
        "properties": {
          "noOfLoans": {
            "type": "number",
            "example": 5
          },
          "currentOutstandingBalance": {
            "type": "number",
            "example": 5
          },
          "minimumPaymentAmount": {
            "type": "number",
            "example": 5000
          },
          "interestRate": {
            "type": "number",
            "example": 2.1
          },
          "interestRateDerived": {
            "type": "number",
            "example": 2.1
          },
          "updatedOn": {
            "type": "number",
            "example": 1643917895192
          },
          "createdOn": {
            "type": "number",
            "example": 1643917895192
          }
        },
        "required": [
          "noOfLoans",
          "currentOutstandingBalance",
          "minimumPaymentAmount"
        ]
      },
      "CreditCardSummary": {
        "type": "object",
        "properties": {
          "noOfCreditCards": {
            "type": "number",
            "example": 1
          },
          "currentOutstandingBalance": {
            "type": "number",
            "example": 5433.12
          },
          "availableCredit": {
            "type": "number",
            "example": 1200
          },
          "creditUtilization": {
            "type": "number",
            "example": 45.2,
            "description": "This field represents the credit utilization rate, expressed as a percentage. It indicates the proportion of a credit limit that is currently being used across all cards for a user."
          },
          "updatedOn": {
            "type": "number",
            "example": 1643917895192
          },
          "createdOn": {
            "type": "number",
            "example": 1643917895192
          }
        },
        "required": [
          "noOfCreditCards",
          "currentOutstandingBalance",
          "availableCredit"
        ]
      },
      "PersonalLoanSummary": {
        "type": "object",
        "properties": {
          "noOfLoans": {
            "type": "number"
          },
          "currentOutstandingBalance": {
            "type": "number"
          },
          "minimumPaymentAmount": {
            "type": "number"
          },
          "interestRate": {
            "type": "number"
          },
          "interestRateDerived": {
            "type": "number"
          },
          "updatedOn": {
            "type": "number"
          },
          "createdOn": {
            "type": "number"
          }
        },
        "required": [
          "noOfLoans",
          "currentOutstandingBalance",
          "minimumPaymentAmount"
        ]
      },
      "LiabilityGroupPayoffQuote": {
        "type": "object",
        "properties": {
          "studentLoanIds": {
            "example": [
              "cc444634-40a8-4a62-849d-4e2db7b8a9ad",
              "76dcd699-2f21-49b5-9c09-6aa02b5c6529"
            ],
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "liabilityGroupId": {
            "type": "string",
            "example": "lc444634-40a8-4a62-849d-4e2db7b8a9ad"
          },
          "payoffAmount": {
            "type": "number",
            "example": 28041
          },
          "payoffGoodThroughDate": {
            "type": "string",
            "example": "2025-05-29"
          },
          "updatedOn": {
            "type": "number",
            "example": 1678724487132
          }
        },
        "required": [
          "studentLoanIds",
          "liabilityGroupId",
          "payoffAmount",
          "payoffGoodThroughDate",
          "updatedOn"
        ]
      },
      "StudentLoanSummary": {
        "type": "object",
        "properties": {
          "noOfLoans": {
            "type": "number",
            "example": 5
          },
          "currentOutstandingBalance": {
            "type": "number",
            "example": 5
          },
          "minimumPaymentAmount": {
            "type": "number",
            "example": 5000
          },
          "interestRate": {
            "type": "number",
            "example": 2.1
          },
          "interestRateDerived": {
            "type": "number",
            "example": 2.1
          },
          "updatedOn": {
            "type": "number",
            "example": 1643917895192
          },
          "createdOn": {
            "type": "number",
            "example": 1643917895192
          },
          "liabilityGroupPayoffQuotes": {
            "description": "List of payoff quotes grouped by liability group",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LiabilityGroupPayoffQuote"
            }
          }
        },
        "required": [
          "noOfLoans",
          "currentOutstandingBalance",
          "minimumPaymentAmount"
        ]
      },
      "BankAccountSummary": {
        "type": "object",
        "properties": {
          "noOfBankAccounts": {
            "type": "number",
            "example": 5
          },
          "updatedOn": {
            "type": "number",
            "example": 1643917895192
          }
        },
        "required": [
          "noOfBankAccounts"
        ]
      },
      "ReportStatus": {
        "type": "object",
        "properties": {
          "status": {
            "enum": [
              "SUCCESS",
              "FROZEN_REPORT",
              "FRAUD_INDICATOR"
            ],
            "type": "string",
            "example": "SUCCESS",
            "description": "The outcome of the credit report retrieval: SUCCESS, FROZEN_REPORT (consumer freeze), or FRAUD_INDICATOR (fraud alert on file)"
          },
          "reason": {
            "type": "string",
            "description": "Optional reason describing the report status e.g. \"Frozen by consumer as allowed by state law. File is returned due to exempted use.\" or \"Fraud alert on file.\""
          }
        },
        "required": [
          "status"
        ]
      },
      "FormerName": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "description": "Former first name",
            "example": "John"
          },
          "middleName": {
            "type": "string",
            "description": "Former middle name",
            "example": "L"
          },
          "lastName": {
            "type": "string",
            "description": "Former last name",
            "example": "Doe"
          }
        },
        "required": [
          "firstName",
          "lastName"
        ]
      },
      "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"
        ]
      },
      "CreditReportAddress": {
        "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"
          },
          "residencyType": {
            "enum": [
              "PREVIOUS",
              "CURRENT"
            ],
            "type": "string",
            "description": "Residency type."
          },
          "addressOwnership": {
            "enum": [
              "RENT",
              "OWN",
              "BUY"
            ],
            "type": "string",
            "description": "Ownership status of the address."
          },
          "addressSource": {
            "enum": [
              "EQUIFAX",
              "TRANSUNION",
              "OTHER",
              "AUTOMATED_UPDATE"
            ],
            "type": "string",
            "description": "Source of the address information."
          },
          "residencyDurationInMonths": {
            "type": "number",
            "description": "Length of stay in months at a specific address.",
            "example": 2
          },
          "reportedDate": {
            "format": "date-time",
            "type": "string",
            "description": "The date the address was reported to the credit bureau",
            "example": "2020-01-01"
          },
          "reportedDateWithFormat": {
            "description": "The reported date with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "firstReportedDateWithFormat": {
            "description": "The first reported date with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          }
        },
        "required": [
          "addressLine1",
          "city",
          "state",
          "zip"
        ]
      },
      "CreditEmploymentHistory": {
        "type": "object",
        "properties": {
          "employerName": {
            "type": "string",
            "description": "Employer name",
            "example": "Acme Inc"
          },
          "position": {
            "type": "string",
            "description": "Employment position",
            "example": "Software Engineer"
          },
          "startDateWithFormat": {
            "description": "Employment start date with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "reportedDateWithFormat": {
            "description": "Employment reported date with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "employmentStatus": {
            "enum": [
              "CURRENT",
              "PREVIOUS"
            ],
            "type": "string",
            "description": "Employment status"
          }
        }
      },
      "CreditProfile": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "example": "CHRISTY"
          },
          "middleName": {
            "type": "string",
            "example": "L"
          },
          "lastName": {
            "type": "string",
            "example": "JENOVAL"
          },
          "creditScore": {
            "type": "number",
            "example": 720
          },
          "model": {
            "enum": [
              "VANTAGE_SCORE_3_0",
              "FICO_SCORE_4",
              "FICO_SCORE_8"
            ],
            "type": "string",
            "description": "Scoring model",
            "example": "VANTAGE_SCORE_3_0"
          },
          "ssn": {
            "type": "string",
            "description": "The last 4 digits of the user's ssn",
            "example": "1234"
          },
          "dateOfBirth": {
            "format": "date-time",
            "type": "string",
            "example": "1980-01-01"
          },
          "updatedOn": {
            "type": "number",
            "example": 1597753517524
          },
          "createdOn": {
            "type": "number",
            "example": 1597753517524
          },
          "formerNames": {
            "description": "Former names of the user.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FormerName"
            }
          },
          "addresses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreditReportAddress"
            }
          },
          "employmentHistory": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreditEmploymentHistory"
            }
          }
        }
      },
      "InquiryAddress": {
        "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",
            "example": "CA",
            "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"
            ]
          },
          "zip": {
            "type": "string",
            "example": "90211"
          },
          "zipExtension": {
            "type": "string",
            "example": "1234"
          }
        },
        "required": [
          "addressLine1",
          "city",
          "zip"
        ]
      },
      "Inquiry": {
        "type": "object",
        "properties": {
          "inquirerName": {
            "type": "string",
            "description": "Inquirer name",
            "example": "SHOPPERS CHARGE ACCO"
          },
          "address": {
            "description": "Inquirer address",
            "allOf": [
              {
                "$ref": "#/components/schemas/InquiryAddress"
              }
            ]
          },
          "phoneNumber": {
            "type": "string",
            "description": "Inquirer phone number",
            "example": "2018184000"
          },
          "inquiryDate": {
            "format": "date-time",
            "type": "string",
            "description": "Inquiry date",
            "example": "2021-01-01"
          },
          "inquirerIndustryCode": {
            "type": "string",
            "description": "Inquirer industry code",
            "example": "C"
          },
          "purposeType": {
            "enum": [
              "HARD",
              "SOFT",
              "OTHER"
            ],
            "type": "string",
            "description": "Purpose type"
          },
          "sourceBureau": {
            "enum": [
              "Equifax",
              "Experian",
              "TransUnion"
            ],
            "type": "string",
            "description": "Source bureau"
          },
          "bureauSubscriberCode": {
            "type": "string",
            "description": "Bureau subscriber code",
            "example": "444CG00377"
          }
        }
      },
      "Court": {
        "type": "object",
        "properties": {
          "industryType": {
            "type": "string",
            "description": "Industry type of the court.",
            "example": "Federal"
          },
          "industryCode": {
            "type": "string",
            "description": "Industry code of the court.",
            "example": "VF"
          },
          "bureauSubscriberCode": {
            "type": "string",
            "description": "Court costumer number.",
            "example": "815VF20128"
          }
        }
      },
      "Narratives": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Narrative's code",
            "example": "EP"
          },
          "description": {
            "type": "string",
            "description": "Narrative's description",
            "example": "Fixed rate"
          }
        }
      },
      "Bankruptcy": {
        "type": "object",
        "properties": {
          "filedDateWithFormat": {
            "description": "Date the bankruptcy was filed, with format.",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "dispositionDateWithFormat": {
            "description": "Date the bankruptcy was disposed, with format.",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "verifiedDateWithFormat": {
            "description": "Date the bankruptcy was verified, with format.",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "reportedDateWithFormat": {
            "description": "Date the bankruptcy was reported, with format.",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "caseNumber": {
            "type": "string",
            "description": "Bankruptcy case number.",
            "example": "1787775"
          },
          "type": {
            "enum": [
              "INDIVIDUAL",
              "BUSINESS"
            ],
            "type": "string",
            "description": "Type of bankruptcy filed."
          },
          "filer": {
            "enum": [
              "INDIVIDUAL",
              "JOINT"
            ],
            "type": "string",
            "description": "Entity or person(s) filing for bankruptcy."
          },
          "disposition": {
            "enum": [
              "FILED_CH_11",
              "FILED_CH_12",
              "FILED_CH_13",
              "DISCHARGED_CH_7",
              "DISCHARGED_CH_11",
              "DISCHARGED_CH_12",
              "DISCHARGED_CH_13",
              "DISMISSED_OR_CLOSED_CH_7",
              "DISMISSED_OR_CLOSED_CH_11",
              "DISMISSED_OR_CLOSED_CH_12",
              "DISMISSED_OR_CLOSED_CH_13",
              "INVOLUNTARY_CH_7",
              "VOLUNTARY_CH_7"
            ],
            "type": "string",
            "description": "Current disposition of the bankruptcy case."
          },
          "priorDisposition": {
            "enum": [
              "FILED_CH_11",
              "FILED_CH_12",
              "FILED_CH_13",
              "DISCHARGED_CH_7",
              "DISCHARGED_CH_11",
              "DISCHARGED_CH_12",
              "DISCHARGED_CH_13",
              "DISMISSED_OR_CLOSED_CH_7",
              "DISMISSED_OR_CLOSED_CH_11",
              "DISMISSED_OR_CLOSED_CH_12",
              "DISMISSED_OR_CLOSED_CH_13",
              "INVOLUNTARY_CH_7",
              "VOLUNTARY_CH_7"
            ],
            "type": "string",
            "description": "Prior disposition of the bankruptcy case."
          },
          "liabilityAmount": {
            "type": "number",
            "description": "Total liability amount for the bankruptcy.",
            "example": 5000
          },
          "assetAmount": {
            "type": "number",
            "description": "Total asset amount for the bankruptcy.",
            "example": 5000
          },
          "exemptAmount": {
            "type": "number",
            "description": "Exempted amount in the bankruptcy.",
            "example": 5000
          },
          "court": {
            "description": "Court handling the bankruptcy case.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Court"
              }
            ]
          },
          "narratives": {
            "description": "Narratives related to the bankruptcy.",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Narratives"
            }
          }
        }
      },
      "Factor": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Factor's code"
          },
          "description": {
            "type": "string",
            "description": "Factor's description"
          }
        }
      },
      "CreditScoreDetails": {
        "type": "object",
        "properties": {
          "reportedDate": {
            "format": "date-time",
            "type": "string",
            "description": "Credit score date",
            "example": "2021-01-01"
          },
          "riskBasedPricingPercentage": {
            "type": "number",
            "description": "Credit score's risk based pricing percentage"
          },
          "riskBasedPricingMin": {
            "type": "number",
            "description": "Credit score's risk based pricing minimum"
          },
          "riskBasedPricingMax": {
            "type": "number",
            "description": "Credit score's risk based pricing maximum"
          },
          "creditScore": {
            "type": "number",
            "description": "Credit score"
          },
          "model": {
            "enum": [
              "VANTAGE_SCORE_3_0",
              "FICO_SCORE_4",
              "FICO_SCORE_8"
            ],
            "type": "string",
            "description": "Scoring model"
          },
          "sourceBureau": {
            "enum": [
              "Equifax",
              "Experian",
              "TransUnion"
            ],
            "type": "string",
            "description": "Source bureau"
          },
          "factors": {
            "description": "Credit score factors",
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Factor"
            }
          }
        }
      },
      "CreditAttribute": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Attribute's description",
            "example": "Number of tradelines"
          },
          "value": {
            "type": "string",
            "description": "Attribute's value",
            "example": "24"
          }
        }
      },
      "CreditReportSummary": {
        "type": "object",
        "properties": {
          "totalSecuredDebtAmount": {
            "type": "number",
            "description": "Total secured debt amount",
            "example": 10000
          },
          "securedDebtLiabilitiesCount": {
            "type": "number",
            "description": "Total secured debt liabilities count",
            "example": 10
          },
          "totalUnsecuredDebtAmount": {
            "type": "number",
            "description": "Total unsecured debt amount",
            "example": 10000
          },
          "unsecuredDebtLiabilitiesCount": {
            "type": "number",
            "description": "Total unsecured debt liabilities count",
            "example": 10
          },
          "totalUnsecuredDebtExcludingStudent": {
            "type": "number",
            "description": "Total unsecured debt amount excluding student loans",
            "example": 10000
          },
          "unsecuredDebtExcludingStudentCount": {
            "type": "number",
            "description": "Total unsecured debt liabilities count excluding student loans",
            "example": 10
          },
          "totalUnknownDebtAmount": {
            "type": "number",
            "description": "Total unknown debt amount",
            "example": 10000
          },
          "unknownDebtLiabilitiesCount": {
            "type": "number",
            "description": "Total unknown debt liabilities count",
            "example": 10
          }
        },
        "required": [
          "totalSecuredDebtAmount",
          "securedDebtLiabilitiesCount",
          "totalUnsecuredDebtAmount",
          "unsecuredDebtLiabilitiesCount",
          "totalUnsecuredDebtExcludingStudent",
          "unsecuredDebtExcludingStudentCount",
          "totalUnknownDebtAmount",
          "unknownDebtLiabilitiesCount"
        ]
      },
      "StatusLog": {
        "type": "object",
        "properties": {
          "previousStatus": {
            "type": "string",
            "enum": [
              "VALID",
              "INVALID"
            ]
          },
          "updatedStatus": {
            "type": "string",
            "enum": [
              "VALID",
              "INVALID"
            ]
          },
          "statusUpdateTs": {
            "type": "number"
          }
        },
        "required": [
          "previousStatus",
          "updatedStatus",
          "statusUpdateTs"
        ]
      },
      "DataStatus": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "enum": [
              "IN_PROGRESS",
              "COMPLETED",
              "ERROR",
              "Success"
            ],
            "example": "COMPLETED"
          },
          "updatedOn": {
            "type": "number",
            "example": 1707932729200
          }
        },
        "required": [
          "status"
        ]
      },
      "ConnectionStatus": {
        "type": "object",
        "properties": {
          "isValid": {
            "type": "boolean",
            "example": true
          },
          "statusCode": {
            "type": "number",
            "example": 2000,
            "description": "Status codes to represent the current state of this connection"
          },
          "description": {
            "type": "string",
            "example": "User has successfully authenticated"
          },
          "userAction": {
            "type": "string"
          },
          "isAuthSuccessful": {
            "type": "boolean",
            "example": true
          },
          "isSecurityStepPending": {
            "type": "boolean",
            "example": false
          },
          "isQuestionStepPending": {
            "type": "boolean",
            "example": false
          },
          "lastSuccessfulAuthOn": {
            "type": "number",
            "example": 1614602485926
          },
          "lastAuthAttemptOn": {
            "type": "number",
            "example": 1614602485926
          },
          "statusChangeLogs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StatusLog"
            }
          },
          "dataStatus": {
            "$ref": "#/components/schemas/DataStatus"
          }
        },
        "required": [
          "statusCode",
          "description",
          "dataStatus"
        ]
      },
      "CreditReport": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "example": "abaa6d3f-e2a3-456e-b727-12f683efb717"
          },
          "sourceBureau": {
            "enum": [
              "Equifax",
              "Experian",
              "TransUnion"
            ],
            "type": "string",
            "example": "Equifax",
            "description": "The bureau that the credit report was sourced from"
          },
          "type": {
            "type": "string",
            "enum": [
              "1_BUREAU.FULL"
            ],
            "example": "1_BUREAU.FULL",
            "description": "The type of credit report used to generate the response"
          },
          "reportStatus": {
            "description": "Status of the credit report (e.g. SUCCESS, FROZEN_REPORT, FRAUD_INDICATOR)",
            "allOf": [
              {
                "$ref": "#/components/schemas/ReportStatus"
              }
            ]
          },
          "profile": {
            "$ref": "#/components/schemas/CreditProfile"
          },
          "inquiries": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Inquiry"
            }
          },
          "bankruptcies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Bankruptcy"
            }
          },
          "creditScoreDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreditScoreDetails"
            }
          },
          "creditAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreditAttribute"
            }
          },
          "summary": {
            "$ref": "#/components/schemas/CreditReportSummary"
          },
          "connectionStatus": {
            "$ref": "#/components/schemas/ConnectionStatus"
          },
          "updatedOn": {
            "type": "number"
          },
          "createdOn": {
            "type": "number"
          }
        }
      },
      "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"
            }
          }
        }
      },
      "LiabilityProfile": {
        "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"
          },
          "paymentHistory": {
            "$ref": "#/components/schemas/PaymentHistory"
          }
        }
      },
      "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"
              }
            ]
          }
        }
      },
      "HomeLoanResponse": {
        "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
          },
          "liabilityProfile": {
            "$ref": "#/components/schemas/LiabilityProfile"
          },
          "balanceDetails": {
            "$ref": "#/components/schemas/LiabilityBalanceDetails"
          },
          "statementSummary": {
            "$ref": "#/components/schemas/LiabilityStatementSummary"
          },
          "creditor": {
            "$ref": "#/components/schemas/Creditor"
          },
          "capabilities": {
            "$ref": "#/components/schemas/CapabilityMatrix"
          }
        },
        "required": [
          "homeLoanId",
          "logoUrl",
          "liabilityProfile",
          "balanceDetails",
          "statementSummary",
          "capabilities"
        ]
      },
      "LiabilityPayoffSummary": {
        "type": "object",
        "properties": {
          "payoffAmount": {
            "type": "number",
            "description": "Pay off amount for the account",
            "example": 2500
          },
          "payoffGoodThroughDate": {
            "format": "date",
            "type": "string",
            "description": "Date till when pay off amount is valid",
            "example": "2023-12-07"
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1597753517524
          }
        }
      },
      "AutoLoanResponse": {
        "type": "object",
        "properties": {
          "autoLoanId": {
            "type": "string",
            "description": "Unique identifier for the auto 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
          },
          "liabilityProfile": {
            "$ref": "#/components/schemas/LiabilityProfile"
          },
          "balanceDetails": {
            "$ref": "#/components/schemas/LiabilityBalanceDetails"
          },
          "statementSummary": {
            "$ref": "#/components/schemas/LiabilityStatementSummary"
          },
          "payoffSummary": {
            "$ref": "#/components/schemas/LiabilityPayoffSummary"
          },
          "creditor": {
            "$ref": "#/components/schemas/Creditor"
          },
          "capabilities": {
            "$ref": "#/components/schemas/CapabilityMatrix"
          }
        },
        "required": [
          "autoLoanId",
          "logoUrl",
          "liabilityProfile",
          "balanceDetails",
          "statementSummary",
          "capabilities"
        ]
      },
      "PersonalLoanResponse": {
        "type": "object",
        "properties": {
          "personalLoanId": {
            "type": "string",
            "description": "Unique identifier for the personal 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
          },
          "liabilityProfile": {
            "$ref": "#/components/schemas/LiabilityProfile"
          },
          "balanceDetails": {
            "$ref": "#/components/schemas/LiabilityBalanceDetails"
          },
          "statementSummary": {
            "$ref": "#/components/schemas/LiabilityStatementSummary"
          },
          "creditor": {
            "$ref": "#/components/schemas/Creditor"
          },
          "capabilities": {
            "$ref": "#/components/schemas/CapabilityMatrix"
          }
        },
        "required": [
          "personalLoanId",
          "logoUrl",
          "liabilityProfile",
          "balanceDetails",
          "statementSummary",
          "capabilities"
        ]
      },
      "MiscellaneousLiabilityProfile": {
        "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"
          },
          "collectionAccountStatus": {
            "enum": [
              "UNPAID",
              "FINANCIAL_COUNSELOR",
              "ADJUSTMENT",
              "WAGE_EARNER",
              "NEW_LISTING",
              "PAID",
              "ACCOUNT_DISPUTED",
              "PAYMENT",
              "UNKNOWN",
              "CHECKED",
              "IN_BANKRUPTCY"
            ],
            "type": "string",
            "description": "Represents the status of a collection account, indicating its current stage in the debt recovery process"
          },
          "paymentHistory": {
            "$ref": "#/components/schemas/PaymentHistory"
          }
        }
      },
      "MiscellaneousLiabilityResponse": {
        "type": "object",
        "properties": {
          "miscellaneousLiabilityId": {
            "type": "string",
            "description": "Unique identifier for the miscellaneous liability",
            "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
          },
          "liabilityProfile": {
            "$ref": "#/components/schemas/MiscellaneousLiabilityProfile"
          },
          "balanceDetails": {
            "$ref": "#/components/schemas/LiabilityBalanceDetails"
          },
          "statementSummary": {
            "$ref": "#/components/schemas/LiabilityStatementSummary"
          },
          "creditor": {
            "$ref": "#/components/schemas/Creditor"
          },
          "capabilities": {
            "$ref": "#/components/schemas/CapabilityMatrix"
          }
        },
        "required": [
          "miscellaneousLiabilityId",
          "logoUrl",
          "liabilityProfile",
          "balanceDetails",
          "statementSummary",
          "capabilities"
        ]
      },
      "CreditCardProfile": {
        "type": "object",
        "properties": {
          "creditCardNumberMasked": {
            "type": "string",
            "description": "Masked credit card number",
            "example": "495962******6670"
          },
          "accountOriginationDate": {
            "format": "date-time",
            "type": "string",
            "description": "Date of account origination",
            "example": "2023-01-15"
          },
          "status": {
            "enum": [
              "OPEN",
              "CLOSED"
            ],
            "type": "string",
            "description": "Credit card status"
          },
          "creditLimit": {
            "type": "number",
            "description": "Credit limit on the account",
            "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": "CreditCard"
          },
          "debtType": {
            "enum": [
              "SECURED",
              "UNSECURED",
              "UNKNOWN"
            ],
            "type": "string",
            "description": "The type of debt. This field indicates whether the debt is secured or unsecured."
          },
          "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"
              }
            ]
          },
          "availableCreditDerived": {
            "type": "number",
            "description": "Derived available credit",
            "example": 2500
          },
          "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": "R"
          },
          "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"
            }
          },
          "creditUtilization": {
            "type": "number",
            "description": "This field represents the credit card utilization rate, expressed as a percentage. It indicates the proportion of a credit limit that is currently being used on this specific credit card.",
            "example": 25
          },
          "limitType": {
            "enum": [
              "FLEXIBLE",
              "REGULAR"
            ],
            "type": "string",
            "description": "Type of credit limit"
          },
          "paymentHistory": {
            "$ref": "#/components/schemas/PaymentHistory"
          }
        }
      },
      "CreditCardBalanceDetails": {
        "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
          }
        }
      },
      "RefreshedDateField": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "Date of the field",
            "example": "2023-04-10"
          },
          "format": {
            "type": "string",
            "description": "Format of the date",
            "example": "YYYY-MM-DD"
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1643917894780
          }
        }
      },
      "RefreshedPaymentField": {
        "type": "object",
        "properties": {
          "value": {
            "type": "number",
            "description": "Payment amount in dollars",
            "example": 100
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1643917894780
          }
        }
      },
      "CreditCardRefreshedFields": {
        "type": "object",
        "properties": {
          "paymentDueDay": {
            "description": "Day of the month for the next payment",
            "example": {
              "value": "10",
              "format": "DD",
              "updatedOn": 1643917894780
            },
            "allOf": [
              {
                "$ref": "#/components/schemas/RefreshedDateField"
              }
            ]
          },
          "lastPaymentDate": {
            "$ref": "#/components/schemas/RefreshedDateField"
          },
          "lastPaymentAmount": {
            "$ref": "#/components/schemas/RefreshedPaymentField"
          }
        }
      },
      "CreditCardStatementSummary": {
        "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": 3194
          },
          "minimumPaymentAmount": {
            "type": "number",
            "description": "Minimum amount due for payment",
            "example": 100
          },
          "lastPaymentAmount": {
            "type": "number",
            "description": "Amount of last payment",
            "example": 100
          },
          "lastPaymentDateWithFormat": {
            "description": "Date of last payment with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          },
          "dueDate": {
            "format": "date-time",
            "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
          },
          "refreshedFields": {
            "description": "Fields that have been updated since the last statement's date",
            "allOf": [
              {
                "$ref": "#/components/schemas/CreditCardRefreshedFields"
              }
            ]
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1597753517524
          },
          "dueDateWithFormat": {
            "description": "Due date for the next payment with format",
            "allOf": [
              {
                "$ref": "#/components/schemas/DateWithFormat"
              }
            ]
          }
        }
      },
      "Apr": {
        "type": "object",
        "properties": {
          "rate": {
            "type": "number",
            "description": "Annual percentage rate",
            "example": 31.24
          },
          "type": {
            "enum": [
              "PURCHASE",
              "BALANCE_TRANSFER",
              "PENALTY",
              "CASH_ADVANCE",
              "INTRO"
            ],
            "type": "string",
            "description": "Type of APR"
          },
          "applicableBalance": {
            "type": "number",
            "description": "The balance to which this APR applies",
            "example": 2500
          },
          "expirationDate": {
            "type": "string",
            "description": "Date when this APR will expire",
            "example": "2023-12-31"
          },
          "source": {
            "enum": [
              "DERIVED",
              "REAL_TIME"
            ],
            "type": "string",
            "description": "Indicates the origin of the APR value"
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1597753517524
          }
        },
        "required": [
          "rate",
          "type",
          "updatedOn"
        ]
      },
      "CreditCardResponse": {
        "type": "object",
        "properties": {
          "creditCardId": {
            "type": "string",
            "description": "Unique identifier for the credit card",
            "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
          },
          "cardProfile": {
            "$ref": "#/components/schemas/CreditCardProfile"
          },
          "balanceDetails": {
            "$ref": "#/components/schemas/CreditCardBalanceDetails"
          },
          "statementSummary": {
            "$ref": "#/components/schemas/CreditCardStatementSummary"
          },
          "aprs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Apr"
            }
          },
          "creditor": {
            "$ref": "#/components/schemas/Creditor"
          },
          "capabilities": {
            "$ref": "#/components/schemas/CapabilityMatrix"
          }
        },
        "required": [
          "creditCardId",
          "logoUrl",
          "cardProfile",
          "balanceDetails",
          "statementSummary",
          "capabilities"
        ]
      },
      "StudentLoanLiabilityProfile": {
        "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"
          },
          "loanType": {
            "enum": [
              "PUBLIC",
              "PRIVATE",
              "UNVERIFIED"
            ],
            "type": "string",
            "description": "Loan Type"
          },
          "paymentHistory": {
            "$ref": "#/components/schemas/PaymentHistory"
          }
        }
      },
      "StudentLoanResponse": {
        "type": "object",
        "properties": {
          "studentLoanId": {
            "type": "string",
            "description": "Unique identifier for the student 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
          },
          "liabilityProfile": {
            "$ref": "#/components/schemas/StudentLoanLiabilityProfile"
          },
          "balanceDetails": {
            "$ref": "#/components/schemas/LiabilityBalanceDetails"
          },
          "statementSummary": {
            "$ref": "#/components/schemas/LiabilityStatementSummary"
          },
          "creditor": {
            "$ref": "#/components/schemas/Creditor"
          },
          "capabilities": {
            "$ref": "#/components/schemas/CapabilityMatrix"
          }
        },
        "required": [
          "studentLoanId",
          "logoUrl",
          "liabilityProfile",
          "balanceDetails",
          "statementSummary",
          "capabilities"
        ]
      },
      "BalanceDetails": {
        "type": "object",
        "properties": {
          "accountBalance": {
            "type": "number",
            "description": "The balance as of the last update",
            "example": 7445.23
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1597753517524
          }
        },
        "required": [
          "accountBalance",
          "updatedOn"
        ]
      },
      "BankAccountProfile": {
        "type": "object",
        "properties": {
          "accountNumberLastFourDigits": {
            "type": "string",
            "description": "Last four digits of the bank account number",
            "example": 1234
          },
          "accountType": {
            "enum": [
              "CHECKING",
              "SAVINGS"
            ],
            "type": "string",
            "description": "Bank account type",
            "example": "CHECKING"
          },
          "balanceDetails": {
            "$ref": "#/components/schemas/BalanceDetails"
          }
        },
        "required": [
          "accountNumberLastFourDigits"
        ]
      },
      "PayableBankAccountProfile": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "description": "Account holder first name",
            "example": "Alex"
          },
          "lastName": {
            "type": "string",
            "description": "Account holder last name",
            "example": "Cohan"
          },
          "email": {
            "type": "string",
            "description": "Account holder email",
            "example": "a.cohan@abc.com"
          },
          "accountNumberLastFourDigits": {
            "type": "string",
            "description": "Last four digits of the bank account number",
            "example": 1234
          },
          "accountType": {
            "enum": [
              "CHECKING",
              "SAVINGS"
            ],
            "type": "string",
            "description": "Bank account type",
            "example": "CHECKING"
          }
        },
        "required": [
          "firstName",
          "lastName",
          "email",
          "accountNumberLastFourDigits",
          "accountType"
        ]
      },
      "BankAccountResponse": {
        "type": "object",
        "properties": {
          "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"
          },
          "bankAccountId": {
            "type": "string",
            "description": "Unique identifier for the bank account",
            "example": "8025c075-e92d-46fa-85e5-ac31ca777079"
          },
          "updatedOn": {
            "type": "number",
            "description": "Timestamp of the last update",
            "example": 1597753517524
          },
          "accountProfile": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/BankAccountProfile"
              },
              {
                "$ref": "#/components/schemas/PayableBankAccountProfile"
              }
            ]
          },
          "createdOn": {
            "type": "number",
            "description": "Timestamp of the creation",
            "example": 1597753517524
          },
          "capabilities": {
            "$ref": "#/components/schemas/CapabilityMatrix"
          }
        },
        "required": [
          "logoUrl",
          "bankAccountId",
          "accountProfile",
          "capabilities"
        ]
      },
      "UserProfile": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "example": "3fef7131-71ae-4204-a8bd-3fc3ad6b4b82"
          },
          "extUserId": {
            "type": "string",
            "example": "3fef7131-71ae-4204-a8bd-3fc3ad6b4b82"
          },
          "isChampion": {
            "type": "boolean"
          },
          "isBorrower": {
            "type": "boolean"
          },
          "networkToken": {
            "type": "string",
            "readOnly": true,
            "example": "eb444634-40a8-4a62-849l-4e2db7b8a9af"
          },
          "profile": {
            "$ref": "#/components/schemas/ProfileUser"
          },
          "autoLoanSummary": {
            "$ref": "#/components/schemas/AutoLoanSummary"
          },
          "homeLoanSummary": {
            "$ref": "#/components/schemas/HomeLoanSummary"
          },
          "miscellaneousLiabilitySummary": {
            "$ref": "#/components/schemas/MiscellaneousLiabilitySummary"
          },
          "creditCardSummary": {
            "$ref": "#/components/schemas/CreditCardSummary"
          },
          "personalLoanSummary": {
            "$ref": "#/components/schemas/PersonalLoanSummary"
          },
          "studentLoanSummary": {
            "$ref": "#/components/schemas/StudentLoanSummary"
          },
          "bankAccountSummary": {
            "$ref": "#/components/schemas/BankAccountSummary"
          },
          "creditReports": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreditReport"
            }
          },
          "homeLoans": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/HomeLoanResponse"
            }
          },
          "autoLoans": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AutoLoanResponse"
            }
          },
          "personalLoans": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PersonalLoanResponse"
            }
          },
          "miscellaneousLiabilities": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MiscellaneousLiabilityResponse"
            }
          },
          "creditCards": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreditCardResponse"
            }
          },
          "studentLoans": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StudentLoanResponse"
            }
          },
          "bankAccounts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BankAccountResponse"
            }
          },
          "updatedOn": {
            "type": "number"
          },
          "createdOn": {
            "type": "number"
          }
        },
        "required": [
          "userId",
          "updatedOn",
          "createdOn"
        ]
      },
      "UserProfileResponse": {
        "type": "object",
        "properties": {
          "status": {
            "$ref": "#/components/schemas/ResponseStatus"
          },
          "data": {
            "$ref": "#/components/schemas/UserProfile"
          }
        },
        "required": [
          "status",
          "data"
        ]
      },
      "CreditorBillingAddress": {
        "type": "object",
        "properties": {
          "billingAddress": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ]
          }
        }
      },
      "UpdateStudentLoanRequest": {
        "type": "object",
        "properties": {
          "accountNumber": {
            "type": "string"
          },
          "creditor": {
            "$ref": "#/components/schemas/CreditorBillingAddress"
          }
        }
      }
    }
  }
}
```