Supergood | RentManager API

Programmatically access RentManager property, unit, lease, resident, accounting, and maintenance data with a stable REST API. Supergood builds and operates production-grade, unofficial RentManager integrations so your team can automate portfolio workflows without heavy custom engineering.

Plain English: RentManager is property management software used by residential and commercial property managers to run their portfolios end-to-end—listing units, managing leases and residents, collecting payments, handling maintenance, and producing owner statements with full accounting. An unofficial API lets you programmatically pull properties, units, leases, tenants/residents, ledgers, charges, payments, work orders, vendors, owners, and documents—and push new records or updates back into RentManager.

For a tech company integrating with RentManager, this means you can ingest real-time portfolio and resident data to power dashboards, sync charges and payments to accounting (e.g., QuickBooks, Xero), automate maintenance flows from your product, enrich your platform with unit availability and delinquency metrics, update lease details and recurring charges, and keep external systems (ERP, analytics, CRM, scheduling) in lockstep.

What is RentManager?

RentManager (https://www.rentmanager.com/) is a cloud platform for property management that centralizes portfolio operations, resident communication, accounting, and maintenance across residential and commercial properties. Teams use RentManager to manage properties and units, run leasing workflows, collect rent and fees, post charges and payments to resident ledgers, coordinate maintenance work orders and vendor assignments, and publish owner statements—supported by resident and owner portals.

Core product areas include:

  • Portfolio & Unit Management (Properties, Buildings, Units, Amenities, Availability)
  • Leasing & Resident Management (Applications, Leases, Renewals, Notices, Co-Residents)
  • Accounting & Payments (Resident Ledgers, Charges, Recurring Charges, Payments, GL, Bank Reconciliation)
  • Maintenance (Work Orders, Vendors, Scheduling, Inspections, Attachments)
  • Owner & Vendor Management (Ownership, Disbursements, Vendor Records)
  • Communications & Portals (Resident Portal, Owner Portal, Messaging, Documents)
  • Marketing & Screening (Listings, Showings, Screening Integrations)
  • Utilities & Metering (Utility Billing, Meter Reads)

Common data entities:

  • Companies, Users, Roles/Permissions (Property Manager, Resident/Tenant, Owner, Vendor)
  • Properties/Buildings/Units (metadata, addresses, availability, market rent)
  • Leases (terms, rent/frequency, deposit, status, move-in/out dates)
  • Residents/Tenants (contacts, co-residents, preferences)
  • Ledger Transactions (charges, credits, payments, fees, refunds)
  • Recurring Charges (rent schedules, utilities, add-ons)
  • Work Orders (tickets, categories, priorities, scheduling, assignments)
  • Vendors (contact info, service categories, compliance)
  • Owners & Ownership (portfolios, statements, distributions)
  • Bank Accounts & GL Accounts (codes, posting rules)
  • Documents & Attachments (lease files, photos, invoices)

The RentManager Integration Challenge

Property management teams rely on RentManager daily, but turning portal- and report-based workflows into API-driven automation is non-trivial:

  • API access and licensing: Many teams report that API access requires specific licensing or partner arrangements and can carry non-trivial costs
  • Accounting rigor: Resident ledgers, GL accounts, deposits, and posting cycles demand careful handling to avoid double-posting or misclassification
  • Portal-first features: Resident and owner portal flows (payments, maintenance, notices) are optimized for front-end interactions
  • Data exports: Teams often depend on reports/CSV for bulk export; mapping those to normalized objects for automation is time-consuming
  • Complex relationships: Properties > units > leases > residents link to financials, owners, and vendors, with custom fields and tenant-specific nuances
  • Authentication complexity: SSO/MFA and session lifecycles complicate headless automation across role-based permissions

How Supergood Creates RentManager APIs

Supergood reverse-engineers authenticated browser flows and network interactions to deliver a resilient API endpoint layer for your RentManager tenant.

  • Handles username/password, SSO/OAuth, and MFA (SMS, email, TOTP) securely
  • Maintains session continuity with automated refresh and change detection
  • Normalizes responses so you can integrate once and rely on consistent objects across modules
  • Aligns with customer entitlements and role-based permissions to ensure compliant access
  • Maps accounting objects (charges, payments, GL codes) with idempotency safeguards
  • Supports attachments/uploads for documents, photos, and invoices

Use Cases

Portfolio & Resident Data Sync

  • Mirror properties, units, leases, and residents into your internal systems
  • Keep occupancy, availability, and delinquency metrics current for analytics and reporting
  • Normalize addresses, statuses, and rent terms across portfolios

Leasing & Payments Automation

  • Create one-time and recurring charges for rent, utilities, and fees from your product
  • Capture payments and reconcile against ledgers; sync summaries to ERP/accounting (e.g., QuickBooks, Xero)
  • Trigger notices (renewal, delinquency) and update lease terms programmatically

Maintenance & Work Orders

  • Generate work orders from resident portal events, sensors, or field apps
  • Assign vendors, schedule visits, update status, and attach photos/documents
  • Feed maintenance data to your scheduling or compliance systems

Owner Reporting & Distribution

  • Pull owner statements and balances for investor portals
  • Track distributions and integrate payout workflows
  • Provide consolidated, cross-portfolio reporting with standardized identifiers

Available Endpoints

Authentication

POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth when enabled. Returns a short-lived auth token maintained by the platform.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/sessions \
  --header 'Authorization: Basic <Base64 encoded token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "username": "[email protected]",
    "password": "<password>",
    "mfa": { "type": "totp", "code": "123456" }
  }'

Example response

{
  "authToken": "eyJhbGciOi...",
  "expiresIn": 3600,
  "user": {
    "id": "u_rm_729c10",
    "name": "Portfolio Manager",
    "entitlements": ["properties", "units", "leases", "residents", "ledger", "work_orders", "owners"]
  }
}

POST /sessions/refresh: Refresh an existing token to keep sessions uninterrupted.

Properties

GET /properties: List properties with summary metrics and optional unit details.

Query parameters

  • portfolioId: string
  • type: residential | commercial | mixed
  • city: string
  • status: active | archived
  • includeUnits: boolean
  • updatedFrom, updatedTo: ISO 8601 timestamps
  • page, pageSize: integers for pagination

Example response

{
  "items": [
    {
      "propertyId": "prop_2a91f0",
      "name": "Oak Ridge Apartments",
      "type": "residential",
      "status": "active",
      "address": {
        "line1": "125 Oak Ridge Dr",
        "city": "Columbus",
        "region": "OH",
        "postalCode": "43215",
        "country": "US"
      },
      "unitCount": 120,
      "vacantUnits": 8,
      "occupancyRate": 0.933,
      "marketRentAverage": 1250.00,
      "updatedAt": "2026-01-20T13:45:00Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

Leases

GET /leases: Retrieve leases with resident, unit, and balance details.

Query parameters

  • propertyId: string
  • unitId: string
  • status: active | pending_move_in | notice_given | ended
  • delinquent: boolean
  • updatedFrom, updatedTo: ISO 8601 timestamps
  • page, pageSize: integers for pagination

Example response

{
  "items": [
    {
      "leaseId": "lea_90e412",
      "propertyId": "prop_2a91f0",
      "unitId": "unit_5c102b",
      "unitNumber": "B-203",
      "tenantId": "ten_88b32e",
      "tenantName": "Jordan Smith",
      "startDate": "2026-01-15",
      "endDate": "2027-01-14",
      "rentAmount": 1295.00,
      "rentFrequency": "monthly",
      "depositHeld": 1295.00,
      "balanceDue": 215.00,
      "autopayEnabled": true,
      "status": "active",
      "updatedAt": "2026-01-21T10:03:11Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

Charges

POST /leases/{leaseId}/charges: Create a charge on a resident ledger (rent, utility, fee).

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/leases/lea_90e412/charges \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "type": "late_fee",
    "description": "Late fee - January",
    "amount": 75.00,
    "glAccountCode": "4000-LATEFEES",
    "taxable": false,
    "dueDate": "2026-01-25",
    "referenceId": "crm-evt-2981",
    "attachments": [
      {"fileName": "notice.pdf", "uploadToken": "upl_08ab73"}
    ],
    "notifyResident": true
  }'

Example response

{
  "chargeId": "chg_51af80",
  "ledgerEntryId": "led_7fa223",
  "status": "posted",
  "postedAt": "2026-01-21T11:20:44Z"
}

Work Orders

POST /work-orders: Create a maintenance work order and optionally assign a vendor.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/work-orders \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "propertyId": "prop_2a91f0",
    "unitId": "unit_5c102b",
    "category": "plumbing",
    "priority": "high",
    "description": "Kitchen sink leaking under cabinet",
    "source": "resident_portal",
    "requestedByName": "Jordan Smith",
    "requestedByPhone": "+1-402-555-0199",
    "allowAccessWindow": {"start": "2026-01-22T09:00:00Z", "end": "2026-01-22T14:00:00Z"},
    "preferredScheduleDate": "2026-01-23",
    "vendorId": "ven_9ab441",
    "attachments": [
      {"fileName": "leak_photo.jpg", "uploadToken": "upl_7fa223"}
    ]
  }'

Example response

{
  "workOrderId": "wo_7c3d21",
  "number": 1042,
  "status": "open",
  "queue": "maintenance",
  "createdAt": "2026-01-22T08:15:12Z"
}

PATCH /work-orders/{workOrderId}: Update status, scheduling, and assignment.

curl --request PATCH \
  --url https://api.supergood.ai/integrations/<integration_id>/work-orders/wo_7c3d21 \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "status": "scheduled",
    "scheduledDate": "2026-01-23",
    "assignedVendorId": "ven_9ab441",
    "notes": "Vendor confirmed arrival 10:00-12:00"
  }'

Example response

{
  "workOrderId": "wo_7c3d21",
  "status": "scheduled",
  "scheduledDate": "2026-01-23",
  "assignedVendorId": "ven_9ab441",
  "updatedAt": "2026-01-22T09:55:00Z"
}

Get full API Specs →


Technical Specifications

  • Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth where enabled; supports service accounts or customer-managed credentials
  • Response format: JSON with consistent resource schemas and pagination across modules
  • Rate limits: Tuned for enterprise throughput while honoring customer entitlements and usage controls
  • Session management: Automatic reauth and cookie/session rotation with health checks
  • Data freshness: Near real-time retrieval of properties, units, leases, ledgers, payments, and maintenance objects
  • Security: Encrypted transport, scoped tokens, and audit logging; respects RentManager role-based permissions
  • Webhooks: Optional asynchronous delivery for long-running workflows (e.g., payment posting, work order updates)

Performance Characteristics

  • Latency: Sub-second responses for list/detail queries under normal load
  • Throughput: Designed for high-volume lease, ledger, and work order processing
  • Reliability: Retry logic, backoff, and idempotency keys minimize duplicate actions
  • Adaptation: Continuous monitoring for UI/API changes with rapid adapter updates

Getting Started

  1. Schedule Integration Assessment

Book a 30-minute session to confirm your modules, licensing, and authentication model.

  1. Supergood Builds and Validates Your API

We deliver a hardened RentManager adapter tailored to your workflows and entitlements.

  1. Deploy with Monitoring

Go live with continuous monitoring and automatic adjustments as RentManager evolves.

Schedule Integration Call →


Frequently Asked Questions

Q: Which RentManager modules can this integration cover?

Supergood supports workflows across commonly used modules such as Portfolio/Unit Management, Leasing (Applications, Leases, Renewals), Accounting (Resident Ledgers, Charges, Payments, GL), Maintenance (Work Orders, Vendors), and Portals (Resident, Owner)—subject to your licensing and entitlements. We scope coverage during integration assessment.

Q: How are MFA and SSO handled for automation?

We support username/password + MFA (SMS, email, TOTP) and can operate behind SSO/OAuth when enabled. Sessions are refreshed automatically with secure challenge handling.

Q: Can you sync charges and payments to our accounting system?

Yes. We can normalize charges, payments, and GL-coded line items to match your ERP/accounting schema and deliver updates via webhooks or polling while complying with rate and permission constraints. We commonly integrate with QuickBooks and Xero.

Q: Are resident attachments and approvals supported for maintenance or notices?

Yes. We support downloading portal artifacts and uploading attachments via signed uploads, with checksum validation and time-limited URLs. Status changes, notes, and scheduling are modeled explicitly in our normalized responses.



Ready to automate your RentManager workflows?

Supergood can have your RentManager integration live in days with no ongoing engineering maintenance.

Get Started →

Read more