Api Endpoint

Sindri

Rental property investment calculator. Full multi-year deal analysis for a rental property deal: mortgage, per-category rent/expense growth, a sale scenario, IRR, and cumulative totals over the holding period, alongside the first-year NOI/cap-rate/cash-on-cash snapshot.

Open interactive test console

Offering

Provider
ppu43fkyhimq5fiqpmo42eh5ri0yypid.lambda-url.us-east-1.on.aws
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
Financial Analysis
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://ppu43fkyhimq5fiqpmo42eh5ri0yypid.lambda-url.us-east-1.on.aws/rentalPropertyCalculator
MIME type
Not provided
First seen
2026-10-16T01:50:53.972Z
Last seen
Tags
rental property ROI, real estate investing, deal analysis

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.01 USDC
Atomic price: 10000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Payment option 2
0.01 USDC
Atomic price: 10000 · Network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "10000",
    "payTo": "0x548eFd4f4d4A5C3669dbb4CBB2B1A637FeeEc5F6"
  },
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "amount": "10000",
    "payTo": "APer2AbhckyMWyJanW2MZ2eRLcpL9Lmhks8rkmXfqjRG"
  }
]

Observed health

Status
Reachable
Latest latency
32 ms
Average latency
375 ms
HTTP status
405
Last checked
Reachability
100% over 14 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "body": {
    "annualInsurance": 0,
    "annualMaintenance": 0,
    "annualPropertyTaxes": 0,
    "closingCosts": 0,
    "downPaymentPercent": 0.2,
    "hoaAnnualIncrease": 0,
    "holdingLengthYears": 2,
    "insuranceAnnualIncrease": 0,
    "interestRate": 0,
    "loanTermYears": 10,
    "maintenanceAnnualIncrease": 0,
    "monthlyHOA": 0,
    "monthlyRent": 2000,
    "otherAnnualExpenses": 0,
    "otherAnnualIncrease": 0,
    "propertyManagementFeeRate": 0,
    "purchasePrice": 200000,
    "rehabCosts": 0,
    "rentAnnualIncrease": 0,
    "saleExpensesRate": 0,
    "salePrice": 200000,
    "taxesAnnualIncrease": 0,
    "vacancyRate": 0
  },
  "bodyType": "json",
  "method": "POST",
  "type": "http"
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "properties": {
            "annualInsurance": {
              "description": "Annual landlord insurance in the first year.",
              "type": "number"
            },
            "annualMaintenance": {
              "description": "Annual maintenance budget in the first year.",
              "type": "number"
            },
            "annualPropertyTaxes": {
              "description": "Annual property taxes in the first year.",
              "type": "number"
            },
            "closingCosts": {
              "default": 0,
              "description": "Closing costs. Default 0.",
              "type": "number"
            },
            "downPaymentPercent": {
              "description": "Down payment as a fraction of purchase price (0-1). Use 1 for an all-cash purchase.",
              "type": "number"
            },
            "hoaAnnualIncrease": {
              "default": 0.03,
              "description": "Annual HOA fee growth rate, as a fraction. Default 0.03.",
              "type": "number"
            },
            "holdingLengthYears": {
              "description": "Number of years you plan to hold the property before selling (1-50).",
              "type": "number"
            },
            "insuranceAnnualIncrease": {
              "default": 0.03,
              "description": "Annual insurance growth rate, as a fraction. Default 0.03.",
              "type": "number"
            },
            "interestRate": {
              "description": "Annual mortgage interest rate, as a fraction. Ignored if downPaymentPercent is 1.",
              "type": "number"
            },
            "loanTermYears": {
              "description": "Loan term in years (1-50). Ignored if downPaymentPercent is 1.",
              "type": "number"
            },
            "maintenanceAnnualIncrease": {
              "default": 0.03,
              "description": "Annual maintenance cost growth rate, as a fraction. Default 0.03.",
              "type": "number"
            },
            "monthlyHOA": {
              "default": 0,
              "description": "Monthly HOA fee. Default 0.",
              "type": "number"
            },
            "monthlyRent": {
              "description": "Total monthly rent collected, before vacancy/management fee.",
              "type": "number"
            },
            "otherAnnualExpenses": {
              "default": 0,
              "description": "Other annual operating expenses in the first year. Default 0.",
              "type": "number"
            },
            "otherAnnualIncrease": {
              "default": 0.03,
              "description": "Annual growth rate for other expenses, as a fraction. Default 0.03.",
              "type": "number"
            },
            "propertyManagementFeeRate": {
              "default": 0.1,
              "description": "Property management fee, as a fraction of gross rent (0-1). Default 0.10.",
              "type": "number"
            },
            "purchasePrice": {
              "description": "Property purchase price.",
              "type": "number"
            },
            "rehabCosts": {
              "default": 0,
              "description": "Upfront rehab/improvement costs. Default 0.",
              "type": "number"
            },
            "rentAnnualIncrease": {
              "default": 0.03,
              "description": "Annual rent growth rate, as a fraction. Default 0.03.",
              "type": "number"
            },
            "saleExpensesRate": {
              "default": 0.09,
              "description": "Sale costs (agent commission, closing costs, etc.), as a fraction of sale price (0-1). Default 0.09.",
              "type": "number"
            },
            "salePrice": {
              "description": "Expected sale price at the end of the holding period.",
              "type": "number"
            },
            "taxesAnnualIncrease": {
              "default": 0.03,
              "description": "Annual property tax growth rate, as a fraction. Default 0.03.",
              "type": "number"
            },
            "vacancyRate": {
              "default": 0.08,
              "description": "Expected vacancy rate, as a fraction (0-1). Default 0.08.",
              "type": "number"
            }
          },
          "required": [
            "purchasePrice",
            "downPaymentPercent",
            "interestRate",
            "loanTermYears",
            "monthlyRent",
            "annualPropertyTaxes",
            "annualInsurance",
            "annualMaintenance",
            "salePrice",
            "holdingLengthYears"
          ],
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}