{"openapi":"3.1.0","info":{"title":"Fintor API","description":"Veřejné REST API Fintoru. Autentizace osobním API tokenem (hlavička `Authorization: Bearer <token>`), token vytvoříte v Nastavení → API tokeny. Každý token patří k jednomu účtu a vidí výhradně jeho data. Chyby se vrací jako `application/problem+json` (RFC 7807).","contact":{"name":"Fintor","email":"fintorcz@gmail.com"},"version":"v1"},"servers":[{"url":"https://app.fintor.cz"}],"security":[{"bearerAuth":[]}],"tags":[{"name":"Úvěry","description":"Hypotéky a půjčky se zůstatkem, sazbou a fixací."},{"name":"Účet","description":"Ověření tokenu a základní informace o účtu."},{"name":"Nájmy","description":"Nájemní smlouvy, jejich verze a saldo nájemného."},{"name":"Transakce","description":"Bankovní transakce: čtení s filtry a ruční zadání."},{"name":"Nemovitosti","description":"Portfolio nemovitostí, měřidla a odečty."},{"name":"Investice","description":"Investiční portfolio a postup k FIRE cíli."},{"name":"Rozpočet","description":"Kategorie, položky a porovnání plánu se skutečností."},{"name":"Kontakty","description":"Nájemníci, správci, dodavatelé."}],"paths":{"/api/v1/transactions/{id}":{"put":{"tags":["Transakce"],"summary":"Upraví ruční transakci (importované jsou jen ke čtení)","operationId":"update","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiTransactionRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiTransaction"}}}}}},"delete":{"tags":["Transakce"],"summary":"Smaže ruční transakci","operationId":"delete","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"204":{"description":"No Content"}}}},"/api/v1/properties/{id}":{"get":{"tags":["Nemovitosti"],"summary":"Detail nemovitosti","operationId":"detail","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiProperty"}}}}}},"put":{"tags":["Nemovitosti"],"summary":"Upraví nemovitost","operationId":"update_1","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiPropertyRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiProperty"}}}}}}},"/api/v1/contacts/{id}":{"get":{"tags":["Kontakty"],"summary":"Detail kontaktu","operationId":"detail_1","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiContact"}}}}}},"put":{"tags":["Kontakty"],"summary":"Upraví kontakt","operationId":"update_2","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiContactRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiContact"}}}}}}},"/api/v1/transactions":{"get":{"tags":["Transakce"],"summary":"Seznam transakcí (bez filtru posledních 500, nejnovější první)","operationId":"list","parameters":[{"name":"month","in":"query","required":false,"schema":{"type":"string"}},{"name":"budgetItemId","in":"query","required":false,"schema":{"type":"integer","format":"int64"}},{"name":"account","in":"query","required":false,"schema":{"type":"string"}},{"name":"uncategorizedOnly","in":"query","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListApiTransaction"}}}}}},"post":{"tags":["Transakce"],"summary":"Zadá ruční transakci a přepočte skutečnost v rozpočtu","operationId":"create","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiTransactionRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiTransaction"}}}}}}},"/api/v1/properties":{"get":{"tags":["Nemovitosti"],"summary":"Seznam nemovitostí včetně cash flow a equity","operationId":"list_1","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListApiProperty"}}}}}},"post":{"tags":["Nemovitosti"],"summary":"Založí nemovitost (včetně výchozích revizních povinností)","operationId":"create_1","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiPropertyRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiProperty"}}}}}}},"/api/v1/properties/{id}/readings":{"get":{"tags":["Nemovitosti"],"summary":"Odečty měřidel nemovitosti (nejnovější první)","operationId":"readings","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListApiMeterReading"}}}}}},"post":{"tags":["Nemovitosti"],"summary":"Zapíše odečet měřidla","operationId":"createReading","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiMeterReadingRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiMeterReading"}}}}}}},"/api/v1/leases":{"get":{"tags":["Nájmy"],"summary":"Seznam nájmů včetně aktuální verze","operationId":"list_2","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListApiLease"}}}}}},"post":{"tags":["Nájmy"],"summary":"Založí nájem s první verzí a onboarding úkoly","operationId":"create_2","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiLeaseRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiLease"}}}}}}},"/api/v1/leases/{id}/versions":{"post":{"tags":["Nájmy"],"summary":"Vytvoří novou verzi nájmu (změna nájemného, služeb, termínů)","operationId":"createVersion","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiLeaseVersionRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiLeaseVersion"}}}}}}},"/api/v1/contacts":{"get":{"tags":["Kontakty"],"summary":"Seznam kontaktů","operationId":"list_3","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListApiContact"}}}}}},"post":{"tags":["Kontakty"],"summary":"Založí kontakt","operationId":"create_3","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiContactRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiContact"}}}}}}},"/api/v1/budget/items":{"post":{"tags":["Rozpočet"],"summary":"Přidá položku rozpočtu včetně první plánované částky","operationId":"createItem","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiBudgetItemRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiBudgetItemTree"}}}}}}},"/api/v1/budget/categories":{"get":{"tags":["Rozpočet"],"summary":"Strom kategorií a položek rozpočtu","operationId":"categories","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListApiBudgetCategoryTree"}}}}}},"post":{"tags":["Rozpočet"],"summary":"Přidá kategorii rozpočtu","operationId":"createCategory","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiBudgetCategoryRequest"}}},"required":true},"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiBudgetCategoryTree"}}}}}}},"/api/v1/properties/{id}/meters":{"get":{"tags":["Nemovitosti"],"summary":"Měřidla nemovitosti","operationId":"meters","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListApiMeter"}}}}}}},"/api/v1/me":{"get":{"tags":["Účet"],"summary":"Informace o účtu, tokenu a zapnutých modulech","operationId":"me","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiAccountInfo"}}}}}}},"/api/v1/loans":{"get":{"tags":["Úvěry"],"summary":"Seznam úvěrů včetně zbývajícího úroku a doby splácení","operationId":"list_4","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListApiLoan"}}}}}}},"/api/v1/leases/{id}":{"get":{"tags":["Nájmy"],"summary":"Detail nájmu se všemi verzemi","operationId":"detail_2","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiLease"}}}}}}},"/api/v1/leases/{id}/ledger":{"get":{"tags":["Nájmy"],"summary":"Saldo nájemného: předpisy, platby a kumulativní zůstatek","operationId":"ledger","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiRentLedger"}}}}}}},"/api/v1/investments":{"get":{"tags":["Investice"],"summary":"Seznam investic s poslední hodnotou a zhodnocením","operationId":"list_5","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListApiInvestment"}}}}}}},"/api/v1/investments/fire":{"get":{"tags":["Investice"],"summary":"Postup k FIRE cíli (investice + equity investičních nemovitostí)","operationId":"fire","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiFireProgress"}}}}}}},"/api/v1/budget":{"get":{"tags":["Rozpočet"],"summary":"Plán vs. skutečnost za měsíc (výchozí aktuální)","operationId":"month","parameters":[{"name":"month","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiBudgetMonth"}}}}}}},"/api/v1/budget/months":{"get":{"tags":["Rozpočet"],"summary":"Měsíce, pro které existuje skutečnost (nejnovější první)","operationId":"months","responses":{"404":{"description":"Not Found","content":{"application/json":{"schema":{"type":"string"}}}},"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiListString"}}}}}}}},"components":{"schemas":{"ApiTransactionRequest":{"type":"object","properties":{"date":{"type":"string","format":"date"},"amount":{"type":"number"},"counterpartyName":{"type":"string"},"variableSymbol":{"type":"string"},"note":{"type":"string"},"budgetItemId":{"type":"integer","format":"int64"}},"required":["amount","date"]},"ApiTransaction":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"date":{"type":"string","format":"date"},"amount":{"type":"number"},"account":{"type":"string"},"counterpartyName":{"type":"string"},"counterpartyAccount":{"type":"string"},"variableSymbol":{"type":"string"},"note":{"type":"string"},"transfer":{"type":"boolean"},"manual":{"type":"boolean"},"budgetItemId":{"type":"integer","format":"int64"},"budgetItemName":{"type":"string"}}},"ApiPropertyRequest":{"type":"object","properties":{"name":{"type":"string","minLength":1},"address":{"type":"string"},"city":{"type":"string"},"layout":{"type":"string"},"areaM2":{"type":"number"},"floor":{"type":"integer","format":"int32"},"status":{"type":"string","enum":["OWNED","PLANNED","SOLD"]},"purpose":{"type":"string","enum":["INVESTMENT","PERSONAL"]},"purchasePrice":{"type":"number"},"currentValue":{"type":"number"},"purchaseDate":{"type":"string","format":"date"},"unitNumber":{"type":"string"},"cadastreTerritory":{"type":"string"},"lvNumber":{"type":"string"},"hasGas":{"type":"boolean"},"notes":{"type":"string"}},"required":["name"]},"ApiProperty":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"address":{"type":"string"},"city":{"type":"string"},"layout":{"type":"string"},"areaM2":{"type":"number"},"floor":{"type":"integer","format":"int32"},"status":{"type":"string","enum":["OWNED","PLANNED","SOLD"]},"purpose":{"type":"string","enum":["INVESTMENT","PERSONAL"]},"purchasePrice":{"type":"number"},"currentValue":{"type":"number"},"purchaseDate":{"type":"string","format":"date"},"unitNumber":{"type":"string"},"cadastreTerritory":{"type":"string"},"lvNumber":{"type":"string"},"notes":{"type":"string"},"totalRent":{"type":"number"},"totalMortgagePayment":{"type":"number"},"totalExpenses":{"type":"number"},"monthlyCashFlow":{"type":"number"},"totalDebt":{"type":"number"},"equity":{"type":"number"}}},"ApiContactRequest":{"type":"object","properties":{"name":{"type":"string","minLength":1},"phone":{"type":"string"},"email":{"type":"string"},"address":{"type":"string"},"category":{"type":"string","enum":["TENANT","SVJ_MEMBER","PROPERTY_MANAGER","CONTRACTOR","OTHER"]},"company":{"type":"string"},"notes":{"type":"string"},"birthNumber":{"type":"string"},"bankAccount":{"type":"string"}},"required":["name"]},"ApiContact":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"address":{"type":"string"},"category":{"type":"string","enum":["TENANT","SVJ_MEMBER","PROPERTY_MANAGER","CONTRACTOR","OTHER"]},"company":{"type":"string"},"notes":{"type":"string"},"leaseCount":{"type":"integer","format":"int32"}}},"ApiMeterReadingRequest":{"type":"object","properties":{"meterId":{"type":"integer","format":"int64"},"readingDate":{"type":"string","format":"date"},"value":{"type":"number"},"source":{"type":"string","enum":["MOVE_IN","MOVE_OUT","PERIODIC","SVJ_RECONCILIATION"]},"leaseId":{"type":"integer","format":"int64"},"note":{"type":"string"}},"required":["meterId","readingDate","value"]},"ApiMeterReading":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"propertyId":{"type":"integer","format":"int64"},"meterId":{"type":"integer","format":"int64"},"meterName":{"type":"string"},"type":{"type":"string","enum":["ELECTRICITY","GAS","COLD_WATER","HOT_WATER","HEATING_IRTN"]},"readingDate":{"type":"string","format":"date"},"value":{"type":"number"},"leaseId":{"type":"integer","format":"int64"},"source":{"type":"string","enum":["MOVE_IN","MOVE_OUT","PERIODIC","SVJ_RECONCILIATION"]},"note":{"type":"string"}}},"ApiLeaseRequest":{"type":"object","properties":{"propertyId":{"type":"integer","format":"int64"},"contactId":{"type":"integer","format":"int64"},"monthlyRent":{"type":"number"},"leaseStart":{"type":"string","format":"date"},"effectiveFrom":{"type":"string","format":"date"},"leaseEnd":{"type":"string","format":"date"},"depositAmount":{"type":"number"},"paymentDay":{"type":"integer","format":"int32"},"bankAccount":{"type":"string"},"variableSymbol":{"type":"string"},"energiesIncluded":{"type":"boolean"},"numberOfPersons":{"type":"integer","format":"int32"},"notes":{"type":"string"},"serviceCharges":{"type":"array","items":{"$ref":"#/components/schemas/ApiServiceCharge"}}},"required":["contactId","leaseStart","monthlyRent","propertyId"]},"ApiServiceCharge":{"type":"object","properties":{"name":{"type":"string"},"monthlyAmount":{"type":"number"}}},"ApiLease":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"propertyId":{"type":"integer","format":"int64"},"propertyName":{"type":"string"},"contactId":{"type":"integer","format":"int64"},"contactName":{"type":"string"},"active":{"type":"boolean"},"notes":{"type":"string"},"tenantAccounts":{"type":"string"},"maxOccupants":{"type":"integer","format":"int32"},"currentVersion":{"$ref":"#/components/schemas/ApiLeaseVersion"},"versions":{"type":"array","items":{"$ref":"#/components/schemas/ApiLeaseVersion"}}}},"ApiLeaseVersion":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"versionNumber":{"type":"integer","format":"int32"},"effectiveFrom":{"type":"string","format":"date"},"monthlyRent":{"type":"number"},"leaseStart":{"type":"string","format":"date"},"leaseEnd":{"type":"string","format":"date"},"depositAmount":{"type":"number"},"paymentDay":{"type":"integer","format":"int32"},"bankAccount":{"type":"string"},"variableSymbol":{"type":"string"},"energiesIncluded":{"type":"boolean"},"numberOfPersons":{"type":"integer","format":"int32"},"notes":{"type":"string"},"serviceCharges":{"type":"array","items":{"$ref":"#/components/schemas/ApiServiceCharge"}},"totalServiceCharges":{"type":"number"}}},"ApiLeaseVersionRequest":{"type":"object","properties":{"effectiveFrom":{"type":"string","format":"date"},"monthlyRent":{"type":"number"},"leaseStart":{"type":"string","format":"date"},"leaseEnd":{"type":"string","format":"date"},"depositAmount":{"type":"number"},"paymentDay":{"type":"integer","format":"int32"},"bankAccount":{"type":"string"},"variableSymbol":{"type":"string"},"energiesIncluded":{"type":"boolean"},"numberOfPersons":{"type":"integer","format":"int32"},"notes":{"type":"string"},"serviceCharges":{"type":"array","items":{"$ref":"#/components/schemas/ApiServiceCharge"}}},"required":["effectiveFrom"]},"ApiBudgetItemRequest":{"type":"object","properties":{"categoryId":{"type":"integer","format":"int64"},"name":{"type":"string","minLength":1},"budgetType":{"type":"string","enum":["MONTHLY","ANNUAL"]},"plannedAmount":{"type":"number"},"validFrom":{"type":"string"},"notes":{"type":"string"}},"required":["categoryId","name","plannedAmount"]},"ApiBudgetItemTree":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"budgetType":{"type":"string","enum":["MONTHLY","ANNUAL"]},"notes":{"type":"string"},"hidden":{"type":"boolean"}}},"ApiBudgetCategoryRequest":{"type":"object","properties":{"name":{"type":"string","maxLength":100,"minLength":0},"sortOrder":{"type":"integer","format":"int32"}},"required":["name"]},"ApiBudgetCategoryTree":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"sortOrder":{"type":"integer","format":"int32"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiBudgetItemTree"}}}},"ApiListApiTransaction":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiTransaction"}},"count":{"type":"integer","format":"int32"}}},"ApiListApiProperty":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiProperty"}},"count":{"type":"integer","format":"int32"}}},"ApiListApiMeterReading":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiMeterReading"}},"count":{"type":"integer","format":"int32"}}},"ApiListApiMeter":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiMeter"}},"count":{"type":"integer","format":"int32"}}},"ApiMeter":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"type":{"type":"string","enum":["ELECTRICITY","GAS","COLD_WATER","HOT_WATER","HEATING_IRTN"]},"name":{"type":"string"},"unit":{"type":"string"},"installed":{"type":"boolean"},"serialNumber":{"type":"string"}}},"ApiAccountInfo":{"type":"object","properties":{"accountId":{"type":"integer","format":"int64"},"accountName":{"type":"string"},"user":{"type":"string"},"tokenName":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"enabledModules":{"type":"array","items":{"type":"string"}},"apiVersion":{"type":"string"}}},"ApiListApiLoan":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiLoan"}},"count":{"type":"integer","format":"int32"}}},"ApiLoan":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"lender":{"type":"string"},"loanType":{"type":"string","enum":["MORTGAGE","BUILDING_SAVINGS_LOAN","CONSUMER_LOAN"]},"originalAmount":{"type":"number"},"balance":{"type":"number"},"annualRatePercent":{"type":"number"},"monthlyPayment":{"type":"number"},"startDate":{"type":"string","format":"date"},"endDate":{"type":"string","format":"date"},"fixationEndDate":{"type":"string","format":"date"},"remainingMonths":{"type":"integer","format":"int32"},"totalInterestRemaining":{"type":"number"},"propertyNames":{"type":"array","items":{"type":"string"}}}},"ApiListApiLease":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiLease"}},"count":{"type":"integer","format":"int32"}}},"ApiRentLedger":{"type":"object","properties":{"leaseId":{"type":"integer","format":"int64"},"tenantName":{"type":"string"},"propertyName":{"type":"string"},"matchConfigured":{"type":"boolean"},"totalPrescribed":{"type":"number"},"totalPaid":{"type":"number"},"totalAdjustments":{"type":"number"},"balance":{"type":"number"},"months":{"type":"array","items":{"$ref":"#/components/schemas/ApiRentMonth"}}}},"ApiRentMonth":{"type":"object","properties":{"month":{"type":"string"},"prescribed":{"type":"number"},"paid":{"type":"number"},"adjustments":{"type":"number"},"cumulativeBalance":{"type":"number"},"state":{"type":"string"}}},"ApiInvestment":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"provider":{"type":"string"},"strategy":{"type":"string"},"monthlyDeposit":{"type":"number"},"latestValue":{"type":"number"},"totalDeposited":{"type":"number"},"gain":{"type":"number"},"gainPercent":{"type":"number"}}},"ApiListApiInvestment":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiInvestment"}},"count":{"type":"integer","format":"int32"}}},"ApiFireProgress":{"type":"object","properties":{"currentValue":{"type":"number"},"targetValue":{"type":"number"},"percentComplete":{"type":"number"},"totalInvestments":{"type":"number"},"totalPropertyEquity":{"type":"number"}}},"ApiListApiContact":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiContact"}},"count":{"type":"integer","format":"int32"}}},"ApiBudgetCategory":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"totalPlanned":{"type":"number"},"totalActual":{"type":"number"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiBudgetItem"}}}},"ApiBudgetItem":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"budgetType":{"type":"string","enum":["MONTHLY","ANNUAL"]},"plannedAmount":{"type":"number"},"actualAmount":{"type":"number"},"difference":{"type":"number"},"notes":{"type":"string"},"hidden":{"type":"boolean"},"transactionCount":{"type":"integer","format":"int64"}}},"ApiBudgetMonth":{"type":"object","properties":{"month":{"type":"string"},"plannedIncome":{"type":"number"},"plannedExpenses":{"type":"number"},"totalIncome":{"type":"number"},"totalExpenses":{"type":"number"},"netCashFlow":{"type":"number"},"categories":{"type":"array","items":{"$ref":"#/components/schemas/ApiBudgetCategory"}}}},"ApiListString":{"type":"object","properties":{"items":{"type":"array","items":{"type":"string"}},"count":{"type":"integer","format":"int32"}}},"ApiListApiBudgetCategoryTree":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ApiBudgetCategoryTree"}},"count":{"type":"integer","format":"int32"}}}},"securitySchemes":{"bearerAuth":{"type":"http","description":"Osobní API token z Nastavení → API tokeny.","scheme":"bearer"}}}}