Rent Roll Extraction API

Any multifamily rent roll — Yardi, RealPage, Entrata, AppFolio, MRI, Buildium, lender templates, PDFs — in; one fixed JSON schema out, with every printed total on the document reconciled against the extracted rows.

Self-serve signup is not enabled on this server.

Quick start (REST)

curl -X POST /v1/extract \
  -H "Authorization: Bearer $RRX_KEY" \
  -F "file=@rent_roll.pdf"

Response: {"rows": [...], "report": {...}, "usage": {...}}. Each row has unit_num, unit_type, sqft, br, bath, occupancy (OCC|VAC), tenant, move_in, move_out, lease_start, lease_end, rent_market, rent_tenant, rent_gov_subsidy, rent_total, is_mtm, mtm_charge, other_charges[]. report.status is ok, needs_review (with the reason) or failed (not billed). Interactive docs: /docs.

Quick start (MCP)

Add this server to Claude, Cursor or any MCP client:

{
  "mcpServers": {
    "rent-roll": {
      "url": "/mcp/",
      "headers": { "Authorization": "Bearer $RRX_KEY" }
    }
  }
}

Tool: extract_rent_roll(filename, file_url | file_base64, verify).

Your account

Console: usage, API keys, invoices, switch plan, cancel · Status: /healthz