canonical: https://jentic.com/apis/buildium.com/buildium

# Buildium API

Jentic publishes the only available OpenAPI specification for Buildium API, keeping it validated and agent-ready. Buildium is a property management platform from RealPage that handles rental properties, homeowner associations, leases, tenants, owners, vendors, maintenance work orders, communications, and a full accounting ledger. Across 326 endpoints the API exposes every record an operator touches in the dashboard, from lease transactions and bill payments to applicant pipelines and bank reconciliations. Use it to sync Buildium with custom landlord portals, push financial data into BI, automate tenant onboarding, or drive maintenance scheduling.

## For AI agents

Manage rental properties, leases, tenants, owners, vendors, bills, bank accounts, and the full Buildium accounting ledger across 326 endpoints.

## Scope

Does not handle online rent payment processing, listing syndication to portals like Zillow, or background screening - use for property records, leases, accounting, and communications inside Buildium only.

## Capabilities

- List, create, and update rental properties, units, and homeowner associations
- Manage the lease lifecycle including applicants, leases, lease transactions, and renewals
- Record bills, vendor payments, and ownership account transactions on the accounting ledger
- Reconcile bank accounts and post general ledger entries
- Send and read tenant communications, attach files, and manage announcements
- Track maintenance work orders, tasks, and recurring service items
- Read tenant, owner, and applicant records with their full transaction history

## Use cases

### Owner Statement Automation

Generate monthly owner statements without exporting CSVs from the dashboard. The agent walks owners and ownership account transactions endpoints to assemble income, expenses, and ending balances per property, then formats a PDF and emails it. Buildium's general ledger endpoints let you reconcile the totals against the bank account before sending.

Example prompt: For each owner, list ownership account transactions in the previous calendar month, total by category, and email the owner a PDF statement attached.

### Tenant Lifecycle Sync

Mirror tenants, leases, and applicants from Buildium into a CRM or custom resident portal. The lease endpoints expose start dates, end dates, rent amounts, and balances, while the applicant endpoints expose the rental pipeline. A nightly job can pull updated records and upsert them into the downstream system, keeping the customer-facing app aligned with Buildium as the source of truth.

Example prompt: Pull every lease updated in the last 24 hours, upsert into Salesforce keyed on lease ID, and flag any with end dates inside 30 days for renewal outreach.

### Maintenance Dispatching

When a tenant submits a maintenance request, the agent creates a work order, assigns a vendor, and posts a communication confirming the appointment. Maintenance and vendor endpoints together cover the dispatch loop, and the communications endpoint logs the tenant-facing message so it appears in their Buildium message thread.

Example prompt: Create a work order on unit 7821 for a leaking faucet, assign vendor ID 442, and send the tenant a Buildium communication confirming a Tuesday visit.

### AI Agent Property Operations Assistant via Jentic

An operations agent connected via Jentic can answer ad-hoc questions like which leases expire next month, which bills are overdue, and which units are vacant. The agent searches Jentic for the right operation, loads the schema, and executes against the operator's vault-stored client credentials without the agent ever seeing them.

Example prompt: Search Jentic for list active leases, load the schema, and return leases with end dates inside the next 30 days for property_id 314.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /v1/leases | List leases |
| POST | /v1/leases | Create a lease |
| GET | /v1/rentals | List rental properties |
| POST | /v1/bills | Record a vendor bill |
| GET | /v1/bankaccounts | List bank accounts |
| POST | /v1/leases/{leaseId}/transactions/payments | Record a lease payment |
| POST | /v1/communications | Send a communication to a tenant or owner |

## Key resources

- **Rental Properties** — List, create, and update rental properties and their units
- **Associations** — Manage homeowner association records, owners, and units
- **Leases** — Manage the lease lifecycle including renewals and lease transactions
- **Applicants** — Track rental applications and the applicant pipeline
- **Tenants and Owners** — Read tenant, owner, and association owner records
- **Bank Accounts** — Manage bank accounts, deposits, and reconciliations
- **Bills and Vendors** — Record vendor bills, payments, and recurring expenses
- **Communications** — Send and log tenant and owner messages and announcements

## Why Jentic

- **Setup:** Wiring Buildium by hand means learning its paired clientId and clientSecret header auth, choosing the production or sandbox host, and threading the lease id through payment calls yourself. Through Jentic you install once, import Buildium from the API Directory, store the credentials once, and your agent calls it.
- **Permission scoping:** Buildium puts the lease id in the URL path (/v1/leases/{leaseId}/transactions/payments), so a rule can pin your agent to one lease for those calls, and more broadly you scope it by the operations it needs, such as listing leases and rentals. Because you choose the allowed operations, it can read records and record a payment without being able to post vendor bills unless you add that.
- **Credential handling:** Your Buildium clientId and clientSecret pair is stored once, encrypted, by your own Jentic One instance and injected as the request headers at execution time. Neither value ever enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list leases' or 'record a vendor bill', and Jentic returns the matching Buildium operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Buildkite API** — Buildkite is a CI/CD platform - unrelated domain, but commonly used by Buildium's own engineering teams.
- **BulkSMS API** — BulkSMS sends transactional SMS for tenant rent-due reminders and maintenance updates that Buildium tracks.
- **BulkGate API** — BulkGate is an alternative SMS gateway for tenant notifications driven by Buildium events.

## FAQ

### Why is there no official OpenAPI spec for Buildium API?

Buildium does not publish a maintained OpenAPI specification in the form Jentic uses. Jentic generates and maintains this spec so that AI agents and developers can call Buildium API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Buildium API use?

Buildium uses paired API key headers: clientId and clientSecret are sent on every request. Through Jentic, both values are stored encrypted in the vault and injected at execution time, so the agent never sees the raw secret in its context.

### Can I record a tenant payment through the Buildium API?

Yes. The lease transaction endpoints under /v1/leases/{leaseId}/transactions accept payment, charge, and credit postings. POST a lease payment with amount, payment date, and payment method to apply it against the lease balance and update the owner's accounting ledger automatically.

### Can the Buildium API handle homeowner association accounting?

Yes. Alongside rental properties, the API exposes Associations, AssociationOwners, and OwnershipAccountTransactions endpoints. You can create association records, track unit ownership, and post transactions against the association's general ledger.

### What are the rate limits for the Buildium API?

Buildium applies per-account rate limits that are not encoded in the OpenAPI spec. Add retry-with-backoff for HTTP 429 responses and stagger high-volume jobs such as nightly ledger exports to stay within fair-use thresholds.

### How do I list Buildium leases from an AI agent through Jentic?

Run pip install jentic and authenticate with your ak_* key. Search Jentic with list active Buildium leases, load the GET /v1/leases operation, and execute it with your filter parameters. Jentic injects both the clientId and clientSecret headers from your stored credentials.

### Can I limit what my agent is allowed to do with the Buildium API?

Yes. Jentic One is self-hosted, so your own rules decide which Buildium operations and credentials the agent can use. You can scope it to just the operations it needs, such as listing leases and rentals, so it reads records and records a lease payment without being able to post vendor bills unless you add that. Because Buildium puts the lease id in the URL path (/v1/leases/{leaseId}/transactions/payments), a rule can also pin the agent to a single lease for those payment calls.
