Properties
| Name | Type | Description |
|---|---|---|
| client_refs | object | Your own reference ids (e.g. unit_id, job_id). Echoed back, never used. |
| state | string | US state, 2-letter code (e.g. 'CA'); a state name also works. |
| city | object | City, for a city overlay where covered (e.g. 'Chicago'). Optional. |
| deposit_usd | object | Security deposit held, dollars. |
| monthly_rent_usd | object | Monthly rent, for the deposit cap check. |
| building_units | object | Units in the building. Some interest rules depend on it (NY 6+, IL 25+). |
| move_in_on | object | Tenancy start (YYYY-MM-DD). Used for interest and, when an item's age is unknown, for depreciation. |
| tenancy_ended_on | object | When the tenancy actually ended (YYYY-MM-DD): the lease's end, or an earlier termination or accepted surrender. Deadlines that run from the end of the tenancy use it. For a tenant who left before the |
| lease_end_on | object | Day the lease was scheduled to end (YYYY-MM-DD), when it differs from when the tenancy actually ended (a broken lease). Lost rent and lease-break charges run to it; deadlines do not (they follow tenan |
| vacated_on | string | Day the tenant moved out and returned possession (YYYY-MM-DD). |
| forwarding_address_received_on | object | Day you received the tenant's written forwarding address (YYYY-MM-DD). Several states start or hold the clock on it (Texas, Connecticut, Iowa, Minnesota). |
| tenant_gave_forwarding_address | object | False if no written forwarding address was ever given. IL, PA, OH, SC and NH may relieve the penalty; Delaware also accepts a tenant notice address in the lease. Implied true by forwarding_address_rec |
| demand_received_on | object | Day you received the tenant's demand for the deposit (YYYY-MM-DD; written in Oklahoma, by first-class mail in Maryland 8-203(h)). Arizona, Kansas, Oklahoma, South Carolina and Mississippi start the cl |
| new_tenant_moved_in_on | object | Day a new tenant moved in, if the unit was re-rented (YYYY-MM-DD). West Virginia and Wisconsin can end the period earlier; rent claimed for days from it on is not recoverable (re-rent mitigation). |
| new_tenant_rent_usd | object | Monthly rent the new tenant pays (with new_tenant_moved_in_on): the rent received for overlapping days is credited against rent claimed for them. |
| statement_sent_on | object | Day you sent (or delivered) the itemized statement (YYYY-MM-DD). With it the statement is judged on time or late; documentation.itemized_statement alone cannot tell. |
| claim_notice_sent_on | object | Day you sent the written notice of intent to impose a claim on the deposit (YYYY-MM-DD). Florida (due within 30 days of termination) and the District of Columbia (within 45 days): the balance is due 3 |
| lease_return_days | object | Return period the lease sets, in days, where the statute lets a lease set one (Colorado up to 60, Idaho up to 30, Maine shorter). |
| tenant_gave_proper_notice | object | A termination notice that meets the statute was given (Alaska: 14 days instead of 30 when nothing is deducted for damage). |
| interest_paid_through | object | Interest already paid or credited to the tenant up to this day (annual-payment rules: San Francisco, Los Angeles, Berkeley, Connecticut, Massachusetts, ...): interest is counted from it. |
| nonstandard_provision_signed | object | Wisconsin: the tenant signed a separate NONSTANDARD RENTAL PROVISIONS document covering the charge (ATCP 134.06(3)(b)); false makes such charges 'no'. |
| pet_deposit_usd | object | The part of deposit_usd that is a pet deposit (outside the cap in Missouri, Alabama, North Dakota and Saint Paul; allowed on top of it up to one month in Hawaii and Alaska, half a month in Kansas, a q |
| tenant_age_62_plus | object | The tenant is 62 or older (Connecticut: a one-month cap). |
| tenant_age_60_plus | object | A person 60 or older occupies the unit (New Hampshire 540-A:5, I: the owner-occupied exemption does not reach the unit). tenant_age_62_plus true implies it. |
| small_landlord | object | California AB 12 small landlord (a natural person or an LLC of natural persons owning at most two properties with at most four units; not for a service member): a two-month cap. |
| owner_occupied | object | The landlord lives in the building (ME, NH, NJ and Chicago exempt small owner-occupied buildings; with building_units). |
| landlord_units_owned | object | Rental units the landlord owns in all (Arkansas 5 or fewer, Georgia 10 or fewer, with third_party_managed, may be exempt). |
| third_party_managed | object | A third party manages the unit or collects rent for a fee. |
| owner_is_natural_person | object | Georgia only (44-7-36): the units are owned by a natural person (false: an LLC, corporation, partnership or trust owns them). The small-landlord exemption reaches only a natural person; not given, the |
| deposit_in_separate_account | object | Tennessee only (66-28-301(a)): the deposit was kept in a separate account used only for deposits. No account and no damage listing means none of it can be kept (66-28-301(c)). |
| county | object | Tennessee only: the county the unit is in (the landlord-tenant act applies only in counties over 75,000 by the 2010 census, 66-28-102(a)). Taken from the city when it lies in one county. |
| renter_notice_served_on | object | Utah only (YYYY-MM-DD): day the renter served the 57-17-3(3) notice after the deadline passed. The owner then has five business days to comply (57-17-3(5)); without the notice there is no relief under |
| landlord_filed_action_on | object | Michigan only (YYYY-MM-DD): day the landlord sued for the damages claimed (554.613: sue or return the balance within 45 days). Not given: no suit assumed. |
| prepaid_rent_usd | object | Rent paid in advance beyond the first month, held besides deposit_usd. Counts toward the cap in AK, AZ, CA, CT, MD, MI and NY; earns interest in CT, MA (last month's rent), MD and Chicago; in Minneapo |
| tenancy_type | object | written_lease or at_will (Maine 6033(2): a written agreement's period, at most 30 days, or 21 days for a tenancy at will; Massachusetts 15B(4): at will, 30 days after the move-out, a written lease, 30 |
| tenant_abandoned | object | The tenant abandoned the unit or was evicted (Maryland 8-203(h): the clock runs from the tenant's written demand; Washington 59.18.280: from when the landlord learns of it; Louisiana 9:3251(C): the on |
| contractor_needed | object | Damage exceeds the deposit and needs a third-party contractor, and you said so in writing in time (Virginia, West Virginia: 15 more days). |
| colorado_post_closing_occupancy | object | Colorado: buyer-landlord bought this residence from seller-tenant; both executed purchase-contract post-closing occupancy before the deposit was required. True confirms all facts; false excludes; null |
| deposit_required_on | object | Colorado cap: date submission was required. Collection, move-out and as_of cannot establish the 2027 exception. |
| deposit_collected_on | object | Collection date; defaults to move_in_on. CA AB12 uses it. CO: proxy only if deposit_required_on is absent; never proves the exception. |
| lease_signed_or_renewed_on | object | Day the current lease was signed or last renewed (YYYY-MM-DD). Georgia (2024-07-01) and Maryland (2024-10-01) caps apply to leases from then; defaults to move_in_on, with a warning that a later renewa |
| lease_term_months | object | Term of the lease in months (0 for month-to-month). Delaware's cap applies to leases of a year or more, New Mexico's to shorter ones. |
| furnished | object | The unit is rented furnished (California before AB 12: 3 months; Kansas: 1.5 months; Delaware: no cap). |
| rent_ordinance_covered | object | The unit is covered by the city's rent ordinance (Los Angeles RSO, Berkeley Rent Ordinance). Their deposit interest is owed only then; unknown: the amount is shown beside the refund, not in it. |
| interest_rate_percent | object | Annual rate the deposit account paid, where the law sets interest at the bank's rate (New Jersey, North Dakota, New Hampshire, New York, Pennsylvania, Portland), or caps it (Massachusetts: 5% or the b |
| deductions | array | Charges to deduct (or the landlord's list). Explicit [] means no deductions and selects shorter periods (MT10 days, AK14); omit when unknown. |
| returned | object | What the landlord has returned so far and when. With it, timeliness says whether the refund and the itemized statement were on time and how many days late. |
| documentation | object | What documentation you have; leave a field out when unknown. |
| as_of | string | Date for deadline status; defaults to today (UTC). Send YYYY-MM-DD for repeatable results. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/tektolo-com/json-schema/tektolo-com-settle-request-schema.json",
"title": "SettleRequest",
"x-generated": "2026-10-30",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/tektolo-com-openapi.json#/components/schemas/SettleRequest",
"properties": {
"client_refs": {
"anyOf": [
{
"additionalProperties": {
"type": "string"
},
"type": "object"
},
{
"type": "null"
}
],
"title": "Client Refs",
"description": "Your own reference ids (e.g. unit_id, job_id). Echoed back, never used."
},
"state": {
"type": "string",
"maxLength": 20,
"minLength": 2,
"title": "State",
"description": "US state, 2-letter code (e.g. 'CA'); a state name also works."
},
"city": {
"anyOf": [
{
"type": "string",
"maxLength": 80
},
{
"type": "null"
}
],
"title": "City",
"description": "City, for a city overlay where covered (e.g. 'Chicago'). Optional."
},
"deposit_usd": {
"anyOf": [
{
"type": "number",
"maximum": 10000000.0,
"minimum": 0.0
},
{
"type": "string",
"pattern": "^\\$?[0-9][0-9,]*(\\.[0-9]+)?$"
}
],
"title": "Deposit Usd",
"description": "Security deposit held, dollars."
},
"monthly_rent_usd": {
"anyOf": [
{
"type": "number",
"maximum": 10000000.0,
"minimum": 0.0
},
{
"type": "string",
"pattern": "^\\$?[0-9][0-9,]*(\\.[0-9]+)?$"
},
{
"type": "null"
}
],
"title": "Monthly Rent Usd",
"description": "Monthly rent, for the deposit cap check."
},
"building_units": {
"anyOf": [
{
"type": "integer",
"maximum": 100000.0,
"minimum": 1.0
},
{
"type": "null"
}
],
"title": "Building Units",
"description": "Units in the building. Some interest rules depend on it (NY 6+, IL 25+)."
},
"move_in_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Move In On",
"description": "Tenancy start (YYYY-MM-DD). Used for interest and, when an item's age is unknown, for depreciation."
},
"tenancy_ended_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Tenancy Ended On",
"description": "When the tenancy actually ended (YYYY-MM-DD): the lease's end, or an earlier termination or accepted surrender. Deadlines that run from the end of the tenancy use it. For a tenant who left before the lease was due to end, send the scheduled end as lease_end_on (older callers sent it here, which still works: the deadline is then counted from it, with the move-out date as an earlier alternative where the facts point to one).",
"x-mcp-description": "Actual tenancy end: lease end, early termination or accepted surrender (YYYY-MM-DD). End-of-tenancy deadlines use this; send a different scheduled end as lease_end_on. Legacy scheduled ends still work, with an earlier move-out alternative where applicable."
},
"lease_end_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Lease End On",
"description": "Day the lease was scheduled to end (YYYY-MM-DD), when it differs from when the tenancy actually ended (a broken lease). Lost rent and lease-break charges run to it; deadlines do not (they follow tenancy_ended_on, else the move-out, with the scheduled end as a later alternative).",
"x-mcp-description": "Scheduled lease end (YYYY-MM-DD), if different from actual tenancy end. Lost rent/lease-break charges use it. Deadlines use tenancy_ended_on, else move-out; scheduled end remains a later alternative."
},
"vacated_on": {
"type": "string",
"format": "date",
"title": "Vacated On",
"description": "Day the tenant moved out and returned possession (YYYY-MM-DD)."
},
"forwarding_address_received_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Forwarding Address Received On",
"description": "Day you received the tenant's written forwarding address (YYYY-MM-DD). Several states start or hold the clock on it (Texas, Connecticut, Iowa, Minnesota).",
"x-mcp-description": "Written forwarding address received (YYYY-MM-DD). Can start/hold clocks in TX, CT, IA, MN."
},
"tenant_gave_forwarding_address": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Tenant Gave Forwarding Address",
"description": "False if no written forwarding address was ever given. IL, PA, OH, SC and NH may relieve the penalty; Delaware also accepts a tenant notice address in the lease. Implied true by forwarding_address_received_on.",
"x-mcp-description": "False: no written forwarding address ever given. May relieve penalties in IL/PA/OH/SC/NH; DE also accepts a lease notice address. forwarding_address_received_on implies true."
},
"demand_received_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Demand Received On",
"description": "Day you received the tenant's demand for the deposit (YYYY-MM-DD; written in Oklahoma, by first-class mail in Maryland 8-203(h)). Arizona, Kansas, Oklahoma, South Carolina and Mississippi start the clock on it.",
"x-mcp-description": "Deposit demand received (YYYY-MM-DD): written in OK; first-class mail in MD (8-203(h)). Starts clocks in AZ/KS/OK/SC/MS."
},
"new_tenant_moved_in_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "New Tenant Moved In On",
"description": "Day a new tenant moved in, if the unit was re-rented (YYYY-MM-DD). West Virginia and Wisconsin can end the period earlier; rent claimed for days from it on is not recoverable (re-rent mitigation).",
"x-mcp-description": "Re-rented: new tenant's move-in date (YYYY-MM-DD). Can shorten WV/WI periods; rent overlapping the new tenancy is unrecoverable."
},
"new_tenant_rent_usd": {
"anyOf": [
{
"type": "number",
"maximum": 10000000.0,
"minimum": 0.0
},
{
"type": "string",
"pattern": "^\\$?[0-9][0-9,]*(\\.[0-9]+)?$"
},
{
"type": "null"
}
],
"title": "New Tenant Rent Usd",
"description": "Monthly rent the new tenant pays (with new_tenant_moved_in_on): the rent received for overlapping days is credited against rent claimed for them."
},
"statement_sent_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Statement Sent On",
"description": "Day you sent (or delivered) the itemized statement (YYYY-MM-DD). With it the statement is judged on time or late; documentation.itemized_statement alone cannot tell.",
"x-mcp-description": "Itemized statement sent/delivered (YYYY-MM-DD), to assess timeliness; documentation.itemized_statement alone supplies no date."
},
"claim_notice_sent_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Claim Notice Sent On",
"description": "Day you sent the written notice of intent to impose a claim on the deposit (YYYY-MM-DD). Florida (due within 30 days of termination) and the District of Columbia (within 45 days): the balance is due 30 days after it; a late notice does not count.",
"x-mcp-description": "Written claim notice sent (YYYY-MM-DD). FL: within 30 days of termination; DC:45. Balance due 30 days after timely notice; late notice does not count."
},
"lease_return_days": {
"anyOf": [
{
"type": "integer",
"maximum": 365.0,
"minimum": 0.0
},
{
"type": "null"
}
],
"title": "Lease Return Days",
"description": "Return period the lease sets, in days, where the statute lets a lease set one (Colorado up to 60, Idaho up to 30, Maine shorter)."
},
"tenant_gave_proper_notice": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Tenant Gave Proper Notice",
"description": "A termination notice that meets the statute was given (Alaska: 14 days instead of 30 when nothing is deducted for damage)."
},
"interest_paid_through": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Interest Paid Through",
"description": "Interest already paid or credited to the tenant up to this day (annual-payment rules: San Francisco, Los Angeles, Berkeley, Connecticut, Massachusetts, ...): interest is counted from it.",
"x-mcp-description": "Interest already paid/credited through this date; accrual starts here (annual-payment rules, e.g. SF/LA/Berkeley/CT/MA)."
},
"nonstandard_provision_signed": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Nonstandard Provision Signed",
"description": "Wisconsin: the tenant signed a separate NONSTANDARD RENTAL PROVISIONS document covering the charge (ATCP 134.06(3)(b)); false makes such charges 'no'."
},
"pet_deposit_usd": {
"anyOf": [
{
"type": "number",
"maximum": 10000000.0,
"minimum": 0.0
},
{
"type": "string",
"pattern": "^\\$?[0-9][0-9,]*(\\.[0-9]+)?$"
},
{
"type": "null"
}
],
"title": "Pet Deposit Usd",
"description": "The part of deposit_usd that is a pet deposit (outside the cap in Missouri, Alabama, North Dakota and Saint Paul; allowed on top of it up to one month in Hawaii and Alaska, half a month in Kansas, a quarter in Nebraska).",
"x-mcp-description": "Pet portion of deposit_usd: outside caps in MO/AL/ND/Saint Paul; extra cap allowance of 1 month in HI/AK, half in KS, quarter in NE."
},
"tenant_age_62_plus": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Tenant Age 62 Plus",
"description": "The tenant is 62 or older (Connecticut: a one-month cap)."
},
"tenant_age_60_plus": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Tenant Age 60 Plus",
"description": "A person 60 or older occupies the unit (New Hampshire 540-A:5, I: the owner-occupied exemption does not reach the unit). tenant_age_62_plus true implies it.",
"x-mcp-description": "An occupant is 60+ (NH 540-A:5,I: owner-occupied exemption excluded). tenant_age_62_plus=true implies this."
},
"small_landlord": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Small Landlord",
"description": "California AB 12 small landlord (a natural person or an LLC of natural persons owning at most two properties with at most four units; not for a service member): a two-month cap.",
"x-mcp-description": "CA AB 12: natural person or LLC of natural persons, at most 2 properties containing at most 4 units total, tenant not a service member;2 month cap."
},
"owner_occupied": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Owner Occupied",
"description": "The landlord lives in the building (ME, NH, NJ and Chicago exempt small owner-occupied buildings; with building_units)."
},
"landlord_units_owned": {
"anyOf": [
{
"type": "integer",
"minimum": 0.0
},
{
"type": "null"
}
],
"title": "Landlord Units Owned",
"description": "Rental units the landlord owns in all (Arkansas 5 or fewer, Georgia 10 or fewer, with third_party_managed, may be exempt)."
},
"third_party_managed": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Third Party Managed",
"description": "A third party manages the unit or collects rent for a fee."
},
"owner_is_natural_person": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Owner Is Natural Person",
"description": "Georgia only (44-7-36): the units are owned by a natural person (false: an LLC, corporation, partnership or trust owns them). The small-landlord exemption reaches only a natural person; not given, the statute is shown with the exemption as the alternative.",
"x-mcp-description": "GA 44-7-36 only: true=natural-person owner; false=LLC/corporation/partnership/trust, which cannot claim small-landlord exemption. Omitted: exemption stays an alternative."
},
"deposit_in_separate_account": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Deposit In Separate Account",
"description": "Tennessee only (66-28-301(a)): the deposit was kept in a separate account used only for deposits. No account and no damage listing means none of it can be kept (66-28-301(c)).",
"x-mcp-description": "TN 66-28-301(a): deposit-only separate account. No account and no damage listing means none can be kept (c)."
},
"county": {
"anyOf": [
{
"type": "string",
"maxLength": 60
},
{
"type": "null"
}
],
"title": "County",
"description": "Tennessee only: the county the unit is in (the landlord-tenant act applies only in counties over 75,000 by the 2010 census, 66-28-102(a)). Taken from the city when it lies in one county.",
"x-mcp-description": "TN county: act applies over 75,000 population by 2010 census (66-28-102(a)). Inferred from city only if unambiguous."
},
"renter_notice_served_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Renter Notice Served On",
"description": "Utah only (YYYY-MM-DD): day the renter served the 57-17-3(3) notice after the deadline passed. The owner then has five business days to comply (57-17-3(5)); without the notice there is no relief under 57-17-5.",
"x-mcp-description": "UT 57-17-3(3) renter notice served after deadline (YYYY-MM-DD). Owner gets 5 business days to comply (5); no notice means no 57-17-5 relief."
},
"landlord_filed_action_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Landlord Filed Action On",
"description": "Michigan only (YYYY-MM-DD): day the landlord sued for the damages claimed (554.613: sue or return the balance within 45 days). Not given: no suit assumed.",
"x-mcp-description": "MI 554.613: date landlord sued for claimed damage (YYYY-MM-DD); sue or return balance within 45 days. Omitted assumes no suit."
},
"prepaid_rent_usd": {
"anyOf": [
{
"type": "number",
"maximum": 10000000.0,
"minimum": 0.0
},
{
"type": "string",
"pattern": "^\\$?[0-9][0-9,]*(\\.[0-9]+)?$"
},
{
"type": "null"
}
],
"title": "Prepaid Rent Usd",
"description": "Rent paid in advance beyond the first month, held besides deposit_usd. Counts toward the cap in AK, AZ, CA, CT, MD, MI and NY; earns interest in CT, MA (last month's rent), MD and Chicago; in Minneapolis it lowers the deposit cap to half a month. In UT its balance is returned with the deposit and counted in the refund (57-17-3(2)(b)): send only the unused part (rent already applied to a rental period is not a balance). Elsewhere the refund covers the deposit only and a warning says unused prepaid rent is owed back too.",
"x-mcp-description": "Advance rent beyond first month, held besides deposit_usd. Counts in AK/AZ/CA/CT/MD/MI/NY caps; earns interest in CT/MA(last-month rent)/MD/Chicago; Minneapolis cap becomes half-month. UT: send only unused balance, added to refund (57-17-3(2)(b)); elsewhere refund is deposit-only with prepaid-return warning."
},
"tenancy_type": {
"anyOf": [
{
"type": "string",
"enum": [
"written_lease",
"at_will"
]
},
{
"type": "null"
}
],
"title": "Tenancy Type",
"description": "written_lease or at_will (Maine 6033(2): a written agreement's period, at most 30 days, or 21 days for a tenancy at will; Massachusetts 15B(4): at will, 30 days after the move-out, a written lease, 30 days after its end). Left out with a move-out before tenancy_ended_on: the earlier (at-will) date leads and the other is listed.",
"x-mcp-description": "written_lease or at_will. ME 6033(2): written period<=30 days, at-will 21. MA 15 B(4):30 days from move-out(at-will) or lease end(written). Omitted when vacated_on precedes tenancy_ended_on: earlier at-will date leads; other date listed."
},
"tenant_abandoned": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Tenant Abandoned",
"description": "The tenant abandoned the unit or was evicted (Maryland 8-203(h): the clock runs from the tenant's written demand; Washington 59.18.280: from when the landlord learns of it; Louisiana 9:3251(C): the one-month rule does not apply). Left out: inferred from tenant_gave_proper_notice: false; with a move-out before tenancy_ended_on the earlier abandonment clock leads and the other date is listed.",
"x-mcp-description": "Abandoned or evicted: MD 8-203(h) clock starts at written demand; WA 59.18.280 at landlord awareness; LA 9:3251(C) one-month rule excluded. Omitted: inferred from tenant_gave_proper_notice=false. If vacated_on precedes tenancy_ended_on, earlier abandonment clock leads; other date listed."
},
"contractor_needed": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Contractor Needed",
"description": "Damage exceeds the deposit and needs a third-party contractor, and you said so in writing in time (Virginia, West Virginia: 15 more days)."
},
"colorado_post_closing_occupancy": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Colorado Post Closing Occupancy",
"description": "Colorado: buyer-landlord bought this residence from seller-tenant; both executed purchase-contract post-closing occupancy before the deposit was required. True confirms all facts; false excludes; null unknown. Exception from 2027-01-01."
},
"deposit_required_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Deposit Required On",
"description": "Colorado cap: date submission was required. Collection, move-out and as_of cannot establish the 2027 exception."
},
"deposit_collected_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Deposit Collected On",
"description": "Collection date; defaults to move_in_on. CA AB12 uses it. CO: proxy only if deposit_required_on is absent; never proves the exception."
},
"lease_signed_or_renewed_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Lease Signed Or Renewed On",
"description": "Day the current lease was signed or last renewed (YYYY-MM-DD). Georgia (2024-07-01) and Maryland (2024-10-01) caps apply to leases from then; defaults to move_in_on, with a warning that a later renewal may bring the new cap.",
"x-mcp-description": "Current lease signing/last renewal (YYYY-MM-DD). GA cap from 2024-07-01; MD from 2024-10-01. Defaults move_in_on; warns later renewal may activate cap."
},
"lease_term_months": {
"anyOf": [
{
"type": "integer",
"maximum": 600.0,
"minimum": 0.0
},
{
"type": "null"
}
],
"title": "Lease Term Months",
"description": "Term of the lease in months (0 for month-to-month). Delaware's cap applies to leases of a year or more, New Mexico's to shorter ones."
},
"furnished": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Furnished",
"description": "The unit is rented furnished (California before AB 12: 3 months; Kansas: 1.5 months; Delaware: no cap)."
},
"rent_ordinance_covered": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Rent Ordinance Covered",
"description": "The unit is covered by the city's rent ordinance (Los Angeles RSO, Berkeley Rent Ordinance). Their deposit interest is owed only then; unknown: the amount is shown beside the refund, not in it.",
"x-mcp-description": "Covered by LA RSO or Berkeley Rent Ordinance: required for their deposit interest. Unknown interest stays beside, not inside, refund."
},
"interest_rate_percent": {
"anyOf": [
{
"type": "number",
"maximum": 25.0,
"minimum": 0.0
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
},
{
"type": "null"
}
],
"title": "Interest Rate Percent",
"description": "Annual rate the deposit account paid, where the law sets interest at the bank's rate (New Jersey, North Dakota, New Hampshire, New York, Pennsylvania, Portland), or caps it (Massachusetts: 5% or the bank's lesser rate). Without it bank-rate interest is unknown. Illinois 765 ILCS 715 uses IDFPR's published rate instead.",
"x-mcp-description": "Annual deposit-bank rate: NJ/ND/NH/NY/PA/Portland; MA uses lesser of bank rate or 5%. Omitted bank rate is unknown. IL 765 ILCS 715 uses published IDFPR rate instead."
},
"deductions": {
"items": {
"$ref": "#/$defs/Deduction"
},
"type": "array",
"maxItems": 50,
"title": "Deductions",
"description": "Charges to deduct (or the landlord's list). Explicit [] means no deductions and selects shorter periods (MT10 days, AK14); omit when unknown."
},
"returned": {
"anyOf": [
{
"$ref": "#/$defs/Returned"
},
{
"type": "null"
}
],
"description": "What the landlord has returned so far and when. With it, timeliness says whether the refund and the itemized statement were on time and how many days late.",
"x-mcp-description": "Prior refund/statement and date; timeliness assesses each duty and days late."
},
"documentation": {
"$ref": "#/$defs/Documentation",
"description": "What documentation you have; leave a field out when unknown."
},
"as_of": {
"type": "string",
"format": "date",
"title": "As Of",
"description": "Date for deadline status; defaults to today (UTC). Send YYYY-MM-DD for repeatable results."
}
},
"additionalProperties": false,
"type": "object",
"required": [
"state",
"deposit_usd",
"vacated_on"
],
"$defs": {
"Deduction": {
"properties": {
"category": {
"type": "string",
"enum": [
"unpaid_rent",
"unpaid_utilities",
"cleaning",
"carpet",
"flooring",
"paint",
"blinds_window_coverings",
"appliance",
"fixture_or_hardware",
"wall_or_door_repair",
"key_or_lock",
"late_fees",
"lease_break_fee",
"moving_and_storage",
"reletting_costs",
"trash_and_abandoned_items",
"other_damage",
"other"
],
"title": "Category",
"description": "Charge category; carpet cleaning uses cleaning with cleaning_kind, not carpet."
},
"description": {
"anyOf": [
{
"type": "string",
"maxLength": 200
},
{
"type": "null"
}
],
"title": "Description",
"description": "What was damaged or owed and the repair or charge (e.g. 'bedroom carpet: pet stains, two areas patched'). Printed under the line on the itemized statement you download (HTML or PDF); never stored, logged or hashed, and not in the result."
},
"amount_usd": {
"anyOf": [
{
"type": "number",
"maximum": 10000000.0,
"minimum": 0.0
},
{
"type": "string",
"pattern": "^\\$?[0-9][0-9,]*(\\.[0-9]+)?$"
}
],
"title": "Amount Usd",
"description": "Amount you intend to deduct, in dollars (rounded to cents)."
},
"item_installed_on": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Item Installed On",
"description": "When the item (carpet, paint, appliance...) was installed or last replaced (YYYY-MM-DD). Give this or item_age_years, not both."
},
"item_age_years": {
"anyOf": [
{
"type": "number",
"maximum": 100.0,
"minimum": 0.0
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
},
{
"type": "null"
}
],
"title": "Item Age Years",
"description": "Age of the item in years at move-out (e.g. 4.5)."
},
"useful_life_years": {
"anyOf": [
{
"type": "number",
"maximum": 100.0,
"exclusiveMinimum": 0.0
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
},
{
"type": "null"
}
],
"title": "Useful Life Years",
"description": "Override the useful life used for depreciation (years)."
},
"caused_by_tenant": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Caused By Tenant",
"description": "False when the condition is normal wear and tear (never deductible); null when it is disputed or unknown (a tenant checking a landlord's list): the line is then 'depends', with the amount the rule would allow if it is damage.",
"default": true
},
"has_receipt": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Has Receipt",
"description": "You have a receipt, invoice or estimate for this line."
},
"has_photos": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Has Photos",
"description": "You have photos of this damage."
},
"good_faith_estimate": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Good Faith Estimate",
"description": "The amount is a good-faith estimate: the repair cannot reasonably be finished within the return period, or the vendor's bills have not arrived (California 1950.5(h)(3)). The receipts then follow within 14 days of the repair or the documents."
},
"utility_kind": {
"anyOf": [
{
"type": "string",
"enum": [
"water",
"sewer",
"electric",
"gas",
"heat",
"trash",
"internet",
"other"
]
},
{
"type": "null"
}
],
"title": "Utility Kind",
"description": "unpaid_utilities only: which utility. Some states allow only some (Massachusetts: water); without it such a line is 'depends'."
},
"late_payments": {
"anyOf": [
{
"type": "integer",
"maximum": 600.0,
"minimum": 1.0
},
{
"type": "null"
}
],
"title": "Late Payments",
"description": "late_fees only: how many late payments (or months, where the cap is per month) the fee covers. A statutory cap is per late payment; without this, more than one cap is 'depends'."
},
"work_kind": {
"anyOf": [
{
"type": "string",
"enum": [
"repair",
"replace",
"cleaning"
]
},
{
"type": "null"
}
],
"title": "Work Kind",
"description": "repair (restores the item: never depreciated), replace (a new item: prorated by the old one's remaining life where the rule does), or cleaning (e.g. carpet cleaning: judged as a cleaning line)."
},
"rent_through": {
"anyOf": [
{
"type": "string",
"format": "date"
},
{
"type": "null"
}
],
"title": "Rent Through",
"description": "unpaid_rent only: the last day the rent charged covers. With new_tenant_moved_in_on it decides how much of the rent overlaps the new tenancy (not recoverable: the landlord cannot collect rent twice for the same days)."
},
"cleaning_kind": {
"anyOf": [
{
"type": "string",
"enum": [
"beyond_wear",
"routine",
"unknown"
]
},
{
"type": "null"
}
],
"title": "Cleaning Kind",
"description": "cleaning only: beyond_wear (the unit was left dirtier than normal use; cleaning to restore its move-in condition), routine (ordinary cleaning after normal use, which most states treat as normal wear) or unknown. Where the statute does not name cleaning, an unknown kind is
# --- truncated at 32 KB (37 KB total) ---
# Full source: https://artifacts.apis.io/tektolo-com/json-schema/tektolo-com-settle-request-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/tektolo-com-settle-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.