canonical: https://jentic.com/apis/origin-api.utilihub.io/tenants-utilihub

# Origin Api Utilihub TenAnts API

Jentic publishes the only available OpenAPI specification for TenAnts API, keeping it validated and agent-ready. TenAnts is a Utilihub-hosted property and tenant management API that exposes a small but focused surface for syncing tenant rosters and property records into downstream systems. The three endpoints cover listing tenants, creating tenants, and listing properties, suitable as a lightweight integration source for utility billing, maintenance scheduling, or compliance reporting workflows. It is intended for property managers and small landlord platforms that need basic tenant and property identifiers programmatically.

## For AI agents

List and create tenants and list properties through the TenAnts property management API.

## Scope

Does not handle rent collection, lease document storage, or maintenance ticketing - use for tenant and property roster reads and tenant creation only.

## Capabilities

- List every tenant on the account through GET /tenants
- Add a new tenant record with POST /tenants for onboarding workflows
- List the property records associated with the account via GET /properties
- Reconcile tenant rosters between TenAnts and an external billing system using ids returned by GET /tenants
- Bootstrap a property dashboard by combining /tenants and /properties responses

## Use cases

### Tenant Roster Sync to Billing

Property managers running utility submetering or split-billing want the tenant list mirrored into their billing system. GET /tenants returns the canonical roster, and a scheduled job can diff that against the billing platform and create or close accounts accordingly.

Example prompt: Call GET /tenants on an hourly schedule and reconcile against the billing system, calling its create-account endpoint for any new TenAnts ids.

### Lease Onboarding Automation

When a new lease is signed, an onboarding workflow can call POST /tenants to register the resident in TenAnts so subsequent maintenance, communications, and billing flows have a canonical record. This avoids manual entry in the property manager's dashboard.

Example prompt: POST /tenants with the new resident's name, contact details, and property id immediately after the lease document is e-signed.

### Property Portfolio Snapshot

Investors or asset managers running periodic portfolio reviews can call GET /properties to pull the property list and combine it with GET /tenants to produce occupancy snapshots without exporting CSVs from the TenAnts UI.

Example prompt: GET /properties followed by GET /tenants, then group tenants by property id to compute occupancy per asset.

### Agent-Driven Property Operations via Jentic

Property-ops agents can keep the tenant roster up to date and answer questions about properties through Jentic without provisioning the TenAnts API key in the agent environment. Jentic exposes the three operations by intent and isolates the key.

Example prompt: Use Jentic to search 'add a new tenant', load the POST /tenants schema, and execute with the new resident's details.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/tenants` | List tenants on the account |
| POST | `/tenants` | Create a new tenant |
| GET | `/properties` | List property records |

## Key resources

- **Tenants** — List and create tenant records
- **Properties** — List property records under management

## Why Jentic

- **Setup:** Wiring the TenAnts API by hand means setting up its Authorization-header key auth and mapping the tenant and property routes yourself. Through Jentic you install once, import TenAnts from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** You choose which TenAnts operations the agent may call, so you can limit it to the operations it needs, such as reading the tenant and property rosters, while creating a tenant stays out of the allowed set unless you add it.
- **Credential handling:** Your TenAnts API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list tenants' or 'read the property roster', and Jentic returns the matching TenAnts operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **AppFolio API** — AppFolio is a full property management platform with a richer API surface than TenAnts.
- **Buildium API** — Buildium is another property management platform offering broader CRUD on tenants, leases, and accounting.
- **Stripe API** — Stripe handles rent collection that often follows tenant onboarding in TenAnts.

## FAQ

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

Utilihub publishes documentation but not a maintained OpenAPI document for TenAnts. Jentic generates and maintains this spec so that AI agents and developers can call TenAnts 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 TenAnts API use?

TenAnts uses an API key passed via header (apiKey scheme). Through Jentic the key is stored encrypted in the vault and only injected at execution time, so the raw secret never reaches the agent.

### Can I create a new tenant with the TenAnts API?

Yes. POST /tenants accepts the tenant's contact details and property linkage and returns the new tenant id, suitable for triggering at lease-signing time.

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

The OpenAPI spec does not declare numeric rate limits. The three endpoints are low-volume by nature - confirm with Utilihub support before running batch syncs above a few hundred requests per minute.

### How do I list every tenant under management through Jentic?

Search Jentic for 'list all tenants', load the GET /tenants schema, and execute. The response returns the full roster with ids that can be used to reconcile against external systems.

### Does the TenAnts API expose property creation?

The current spec exposes GET /properties for listing only. Property creation is not in the public API surface - manage properties through the Utilihub UI or contact Utilihub support for portfolio onboarding.

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

Yes. Because you run your own self-hosted Jentic One instance, you decide which TenAnts operations your agent may call, and your own rules govern which credentials it can use. You can allow it to read only the rosters through GET /tenants and GET /properties while keeping tenant creation via POST /tenants outside the permitted set unless you explicitly add it. The scoping is enforced by your instance, so an agent cannot invoke an operation you have not granted.
