Residents

Current and past tenants. List and retrieve, plus async write-back to update a resident.

Writing back to the PMS. Updating a resident is an async write-back: PATCH returns an Operation immediately and the change is reconciled to the source PMS in the background. See the Operations page.
get/v1/residents

List residents

Query parameters

  • limit integer — Page size, 1–100.
  • offset integer — Zero-based record offset.
  • include_deleted boolean — Include soft-deleted records.
  • updated_after string — Return records with updated_at >= this ISO 8601 datetime.
  • created_after string — Return records with created_at >= this ISO 8601 datetime.
  • created_before string — Return records with created_at <= this ISO 8601 datetime.
  • x_id string — External PMS identifier (exact match). Comma-separated list matches ANY (OR).
  • integration_id string — Integration UUID (exact match). Comma-separated list of UUIDs matches ANY (OR).
  • order-by string
  • property_id string — Exact match; comma-separated list matches ANY (OR).
  • lease_id string — Exact match; comma-separated list matches ANY (OR).
  • status string — Exact match; comma-separated list matches ANY (OR).
  • type string — Exact match; comma-separated list matches ANY (OR).
  • first_name string — Case-insensitive substring match.
  • last_name string — Case-insensitive substring match.

Response · 200

Page of residents

FieldTypeDescription
meta*object
FieldTypeDescription
limit*integer
offset*integer
hasMore*boolean
results*array<object>
FieldTypeDescription
id*string
x_id*string
organization_id*string (uuid)
integration_id*string (uuid)
first_namestring | null
middle_namestring | null
last_namestring | null
display_namestring | null
statusstring | null
typestring | null
emailsarray<object> | null
phonesarray<object> | null
addressobject | null
date_of_birthstring (date) | null
genderstring | null
ssn_last_fourstring | null
driver_license_numberstring | null
driver_license_statestring | null
emergency_contact_namestring | null
emergency_contact_phonestring | null
emergency_contact_relationshipstring | null
move_in_datestring (date) | null
move_out_datestring (date) | null
lease_ids*array<string>
property_ids*array<string>
balance*object | null
FieldTypeDescription
amount*integerInteger minor units (e.g., cents).
currency*stringISO 4217 currency code.
preferred_languagestring | null
preferred_contact_methodstring | null
custom_data*object
created_at*string (date-time)
updated_at*string (date-time)
deleted_atstring (date-time) | null
ps_synced_atstring (date-time) | null

Errors

  • 400 — Validation error
  • 401 — Missing or invalid API key
  • 429 — Rate limit exceeded
get/v1/residents/{id}

Retrieve a resident

Path & headers

  • id · path · required

Query parameters

  • include_deleted boolean — Include soft-deleted records.

Response · 200

The resident

FieldTypeDescription
id*string
x_id*string
organization_id*string (uuid)
integration_id*string (uuid)
first_namestring | null
middle_namestring | null
last_namestring | null
display_namestring | null
statusstring | null
typestring | null
emailsarray<object> | null
phonesarray<object> | null
addressobject | null
date_of_birthstring (date) | null
genderstring | null
ssn_last_fourstring | null
driver_license_numberstring | null
driver_license_statestring | null
emergency_contact_namestring | null
emergency_contact_phonestring | null
emergency_contact_relationshipstring | null
move_in_datestring (date) | null
move_out_datestring (date) | null
lease_ids*array<string>
property_ids*array<string>
balance*object | null
FieldTypeDescription
amount*integerInteger minor units (e.g., cents).
currency*stringISO 4217 currency code.
preferred_languagestring | null
preferred_contact_methodstring | null
custom_data*object
created_at*string (date-time)
updated_at*string (date-time)
deleted_atstring (date-time) | null
ps_synced_atstring (date-time) | null

Errors

  • 400 — Validation error
  • 401 — Missing or invalid API key
  • 404 — Resource not found
  • 429 — Rate limit exceeded
patch/v1/residents/{id}

Update a resident (async write-back)

Path & headers

  • id · path · required
  • Idempotency-Key · header · required

Request body (required)

FieldTypeDescription
first_namestring
last_namestring
middle_namestring
emailsarray<object>
phonesarray<object>
addressobject

Response · 202

Write operation queued

FieldTypeDescription
id*string
object*string
type*string
status*string
sourceobject
FieldTypeDescription
statestring | null
applied_atstring (date-time) | null
reconcileobject
FieldTypeDescription
statestring | null
attemptsinteger | null
next_attempt_atstring (date-time) | null
last_errorstring | null
resourceobject
FieldTypeDescription
typestring | null
idstring | null
x_idstring | null
resultobject | null
idempotency_keystring | null
created_at*string (date-time)

Errors

  • 400 — Validation error
  • 401 — Missing or invalid API key
  • 403 — Insufficient permissions
  • 404 — Resource not found
  • 409 — Duplicate idempotency key with different payload
  • 422 — Semantic validation error
  • 429 — Rate limit exceeded

Next

See the Operations page for the async write-back flow, or the Common Data Model for the full entity shapes.