addedInput schema / properties / inputs / additionalProperties
Added value: +true
changedInput schema / properties / inputs / description
Previous value: -"Deal inputs (camelCase engine keys — call list_strategies for each strategy's schema). Minimum: price + the income driver (marketRent / adr+occupancy / units / arv / land+build)."New value: +"Deal inputs in camelCase engine keys. Anything omitted gets a documented default, listed back under assumptions.estimated_fields. Minimum: price + the strategy's income driver (marketRent / adr+occupancy / units / arv / land+build). Call list_strategies for the full per-strategy schema."
addedInput schema / properties / inputs / properties
Added value: +{
+ "adr": {
+ "description": "Average nightly rate in dollars. Required for str.",
+ "type": "number"
+ },
+ "arv": {
+ "description": "After-repair value in dollars. Required for brrr and flip.",
+ "type": "number"
+ },
+ "btsArv": {
+ "description": "Finished build-to-sell value in dollars. Required for newc.",
+ "type": "number"
+ },
+ "buildPsf": {
+ "description": "Build cost per square foot in dollars. Required for newc.",
+ "type": "number"
+ },
+ "downPct": {
+ "description": "Down payment. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional — a documented default applies.",
+ "type": "number"
+ },
+ "insurance": {
+ "description": "Annual insurance in dollars. Optional.",
+ "type": "number"
+ },
+ "landPrice": {
+ "description": "Land acquisition cost in dollars. Required for newc.",
+ "type": "number"
+ },
+ "livingSqft": {
+ "description": "Heated living area in square feet. Required for newc.",
+ "type": "number"
+ },
+ "marketRent": {
+ "description": "Expected monthly rent in dollars. Required for ltr and brrr.",
+ "type": "number"
+ },
+ "occupancy": {
+ "description": "Expected occupancy. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Required for str.",
+ "type": "number"
+ },
+ "price": {
+ "description": "Purchase price in dollars. Required for every strategy except newc.",
+ "type": "number"
+ },
+ "rate": {
+ "description": "Annual interest rate. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional.",
+ "type": "number"
+ },
+ "rehabBudget": {
+ "description": "Renovation budget in dollars. Required for brrr and flip.",
+ "type": "number"
+ },
+ "taxes": {
+ "description": "Annual property taxes in dollars. Optional.",
+ "type": "number"
+ },
+ "term": {
+ "description": "Loan term in years. Optional.",
+ "type": "number"
+ },
+ "units": {
+ "description": "Multifamily rent roll — {unitCount, avgRent, marketRent?} or an array of unit objects. Required for multifamily.",
+ "type": "object"
+ },
+ "vacancyPct": {
+ "description": "Vacancy allowance. Expressed as a FRACTION (0.0675 = 6.75%), never a percent. Optional.",
+ "type": "number"
+ }
+}
changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "additionalProperties": true,
+ "properties": {
+ "assumptions": {
+ "additionalProperties": true,
+ "description": "estimated_fields lists every input REIzer defaulted.",
+ "type": "object"
+ },
+ "metrics": {
+ "additionalProperties": true,
+ "description": "Headline metrics for this strategy.",
+ "type": "object"
+ },
+ "report_url": {
+ "description": "Shareable public report page (30 days).",
+ "type": "string"
+ },
+ "score": {
+ "description": "0-100 deal score.",
+ "type": "number"
+ },
+ "strategy": {
+ "type": "string"
+ },
+ "stress": {
+ "description": "Stress scenarios, each with a verdict.",
+ "items": {
+ "additionalProperties": true,
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "summary": {
+ "description": "Deterministic one-paragraph summary.",
+ "type": "string"
+ },
+ "thresholds": {
+ "additionalProperties": true,
+ "type": [
+ "object",
+ "null"
+ ]
+ },
+ "verdict": {
+ "description": "Strong / Solid / Thin / Weak.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "strategy",
+ "score",
+ "verdict",
+ "metrics",
+ "summary"
+ ],
+ "type": "object"
+}