> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.propexo.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.propexo.com/_mcp/server.

# Get a resident by ID

GET https://api.propexo.com/v1/residents/{id}

Get a resident by ID

Reference: https://docs.propexo.com/api-reference/yardi/residents/get-a-resident-by-id

## Authentication

- `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Servers

- `https://api.propexo.com` (Production, default)
- `https://api.sandbox.propexo.com` (Sandbox)

## Request

### Path parameters

- `id` (string, required) — The ID of the resource.

### Query parameters

- `order-by` (string, optional, default: created_at:desc) — Order the results by a field. Optionally include asc or desc preceded by a colon (default is asc). Example: ?order-by=updated_at:desc
- `updated_at_gte` (string, optional, nullable) — Filter to records updated at or after this datetime. Format: ISO 8601 (e.g. 2026-01-01T00:00:00Z)
- `updated_at_lte` (string, optional, nullable) — Filter to records updated at or before this datetime. Format: ISO 8601 (e.g. 2026-12-31T23:59:59Z)
- `last_seen_gte` (string, optional, nullable) — Filter to records whose last_seen date is on or after this datetime. Format: ISO 8601 (e.g. 2026-01-01T00:00:00Z)
- `last_seen_lte` (string, optional, nullable) — Filter to records whose last_seen date is on or before this datetime. Format: ISO 8601 (e.g. 2026-12-31T23:59:59Z)
- `offset` (integer, optional, nullable, default: 0) — Can be used for paginating results
- `limit` (integer, optional, nullable, default: 100) — A number between 1 and 250 to determine the number of results to return in a single query

## Response

### 200

Successful response

- `meta` (ResponseMeta, required)
- `results` (V1ResidentsIdGetOutputResults, required)

## Errors

### 400 Bad Request Error

Bad Request

- `error` (ErrorResponseError, required)

## Types

### ResponseMeta

- `orderBy` (list of ResponseMetaOrderByItems, required) — The order of the results
- `offset` (integer, optional) — The offset of the first result
- `limit` (integer, optional) — The number of results to return
- `hasMore` (boolean, optional, nullable) — Whether there are more results
- `total` (integer, optional) — The total number of results

### V1ResidentsIdGetOutputResults

- `id` (string, required) — The Propexo unique identifier for the resident
- `created_at` (string, required) — The date record first entered Propexo
- `updated_at` (string, required) — The date record was last updated in Propexo
- `last_seen` (string, required, nullable) — The date the record was last seen from the PMS
- `x_id` (string, required) — The external ID from the integration vendor | Interface | Method | |---|---| | Common Data | GetCurrentUnitInformation | | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus | | ILS Guest Card | GetApplication_Login | | Common Data | GetResidentData |
- `address_1_alternate` (any, required) — The first alternate address line associated with the residentThis field will always be null for YARDI
- `address_1` (string, required, nullable) — The first address line associated with the residentHydrating this field requires making requests to an additional API which will increase your processed records count. Please contact support to enable. Hydrating address fields will require making requests to an additional API which will increase your processed records count. Please contact support to enable. | Interface | Method | | ----------- | ------------------------- | | Common Data | GetCurrentUnitInformation | | Common Data | GetResidentData |
- `address_2_alternate` (any, required) — The second alternate address line associated with the residentThis field will always be null for YARDI
- `address_2` (string, required, nullable) — The second address line associated with the residentHydrating this field requires making requests to an additional API which will increase your processed records count. Please contact support to enable. | Interface | Method | | ----------- | ------------------------- | | Common Data | GetCurrentUnitInformation | | Common Data | GetResidentData |
- `balance_in_cents` (any, required) — The rent balance owedThis field will always be null for YARDI
- `city_alternate` (any, required) — The alternate city associated with the residentThis field will always be null for YARDI
- `city` (string, required, nullable) — The city associated with the residentHydrating this field requires making requests to an additional API which will increase your processed records count. Please contact support to enable. | Interface | Method | | ----------- | ------------------------- | | Common Data | GetCurrentUnitInformation | | Common Data | GetResidentData |
- `country_alternate` (any, required) — The alternate country associated with the residentThis field will always be null for YARDI
- `country` (string, required, nullable) — The country associated with the residentHydrating this field requires making requests to an additional API which will increase your processed records count. Please contact support to enable. | Interface | Method | | ----------- | ------------------------- | | Common Data | GetCurrentUnitInformation | | Common Data | GetResidentData |
- `custom_data` (V1ResidentsIdGetOutputResultsCustomData, required, nullable)
- `date_of_birth` (string, required, nullable) — The date of birth associated with the residentHydrating this field requires making requests to an additional API which will increase your processed records count. Please contact support to enable. | Interface | Method | | -------------- | --------------------- | | ILS Guest Card | GetApplication\_Login |
- `email_1` (string, required, nullable) — The primary email address associated with the resident | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |
- `email_2` (any, required) — The secondary email address associated with the residentThis field will always be null for YARDI
- `first_name` (string, required, nullable) — The first name associated with the resident | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |
- `is_employee` (any, required) — Is the resident an employeeThis field will always be null for YARDI
- `last_name` (string, required, nullable) — The last name associated with the resident | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |
- `late_balance_in_cents` (any, required) — The past due rent balance owedThis field will always be null for YARDI
- `middle_name` (any, required) — The middle name associated with the residentThis field will always be null for YARDI
- `notes` (any, required) — Notes associated with the residentThis field will always be null for YARDI
- `phone_1_type` (enum, required) — Type of the primary phone number | Interface | Method | |---|---| | Common Data | GetResidentsByStatus | | Common Data | GetResidentData |
  - Allowed values: `FAX`, `HOME`, `MOBILE`, `OTHER`, `WORK`
- `phone_1` (string, required, nullable) — Primary phone number associated with the residentHydrating phone fields will require making requests to an additional API which will increase your processed records count. Please contact support to enable. | Interface | Method | | ----------- | -------------------- | | Common Data | GetResidentsByStatus | | Common Data | GetResidentData |
- `phone_2_type` (enum, required) — Type of the secondary phone number | Interface | Method | |---|---| | Common Data | GetResidentData |
  - Allowed values: `FAX`, `HOME`, `MOBILE`, `OTHER`, `WORK`
- `phone_2` (string, required, nullable) — Secondary phone number associated with the resident | Interface | Method | |---|---| | Common Data | GetResidentData |
- `state_alternate` (any, required) — The alternate state associated with the residentThis field will always be null for YARDI
- `state` (string, required, nullable) — The state associated with the residentHydrating this field requires making requests to an additional API which will increase your processed records count. Please contact support to enable. | Interface | Method | | ----------- | ------------------------- | | Common Data | GetCurrentUnitInformation | | Common Data | GetResidentData |
- `zip_alternate` (any, required) — The alternate zip code associated with the residentThis field will always be null for YARDI
- `zip` (string, required, nullable) — The zip code associated with the residentHydrating this field requires making requests to an additional API which will increase your processed records count. Please contact support to enable. | Interface | Method | | ----------- | ------------------------- | | Common Data | GetCurrentUnitInformation | | Common Data | GetResidentData |
- `pets` (list of V1ResidentsIdGetOutputResultsPetsItems, required)
- `vehicles` (list of V1ResidentsIdGetOutputResultsVehiclesItems, required)
- `integration_id` (string, required) — The Propexo unique identifier for the integration
- `integration_vendor` (enum, required) — The property management system of record
  - Allowed values: `YARDI`, `APPFOLIO`, `BUILDIUM`, `ENTRATA`, `MRI`, `PROPERTYWARE`, `PROPERTYWARE_REST`, `REALPAGE`, `REALPAGE_RPX`, `RENTMANAGER`, `RENTVINE`, `RESMAN`, `YARDI_REST`
- `property_id` (string, required) — The Propexo unique identifier for the property
- `x_lease_id` (any, required, deprecated) — Deprecated. Use leases\_meta\_data insteadThis field will always be null for YARDI
- `leases_meta_data` (list of V1ResidentsIdGetOutputResultsLeasesMetaDataItems, optional) — Known associated lease meta data

### ErrorResponseError

- `code` (string, required)
- `message` (string, required)
- `details` (map from string to any, optional)

### ResponseMetaOrderByItems

### V1ResidentsIdGetOutputResultsCustomData

### V1ResidentsIdGetOutputResultsPetsItems

- `id` (string, required) — The Propexo unique identifier for the resident pet
- `created_at` (string, required) — The date record first entered Propexo
- `updated_at` (string, required) — The date record was last updated in Propexo
- `last_seen` (string, required, nullable) — The date the record was last seen from the PMS
- `x_id` (string, required) — The external ID from the integration vendorPet data in Yardi requires additional configuration for your Propexo integration. Please contact Propexo support for more information. | Interface | Method | | ----------- | --------------- | | Common Data | GetResidentData |
- `name` (string, required, nullable) — The name associated with the resident pet | Interface | Method | |---|---| | Common Data | GetResidentData |
- `type` (string, required, nullable) — The type associated with the resident pet | Interface | Method | |---|---| | Common Data | GetResidentData |
- `breed` (string, required, nullable) — The breed of the resident pet | Interface | Method | |---|---| | Common Data | GetResidentData |
- `gender_raw` (string, required, nullable) — The raw value for the gender of the resident pet | Interface | Method | |---|---| | Common Data | GetResidentData |
- `age_in_years` (double, required, nullable) — The age in years of the resident pet | Interface | Method | |---|---| | Common Data | GetResidentData |
- `weight_in_pounds` (double, required, nullable) — The weight in pounds of the resident pet | Interface | Method | |---|---| | Common Data | GetResidentData |
- `is_fixed` (boolean, required, nullable) — Whether the resident pet is fixed | Interface | Method | |---|---| | Common Data | GetResidentData |
- `is_service_animal` (boolean, required, nullable) — Whether the resident pet is a service animal | Interface | Method | |---|---| | Common Data | GetResidentData |
- `notes` (any, required) — Notes associated with the resident petThis field will always be null for YARDI
- `custom_data` (V1ResidentsIdGetOutputResultsPetsItemsCustomData, required, nullable)

### V1ResidentsIdGetOutputResultsVehiclesItems

- `id` (string, required) — The Propexo unique identifier for the resident vehicle
- `created_at` (string, required) — The date record first entered Propexo
- `updated_at` (string, required) — The date record was last updated in Propexo
- `last_seen` (string, required, nullable) — The date the record was last seen from the PMS
- `x_id` (string, required) — The external ID from the integration vendorVehicle data in Yardi requires additional configuration for your Propexo integration. Please contact Propexo support for more information. | Interface | Method | | ----------- | --------------- | | Common Data | GetResidentData |
- `make` (string, required, nullable) — The make of the resident vehicle | Interface | Method | |---|---| | Common Data | GetResidentData |
- `model` (string, required, nullable) — The Propexo data model (e.g. units, residents, applicants, etc.) associated with the resident vehicle | Interface | Method | |---|---| | Common Data | GetResidentData |
- `color` (string, required, nullable) — The color of the resident vehicle | Interface | Method | |---|---| | Common Data | GetResidentData |
- `year` (string, required, nullable) — The year of the resident vehicle | Interface | Method | |---|---| | Common Data | GetResidentData |
- `license_plate_number` (string, required, nullable) — The license plate number of the resident vehicle | Interface | Method | |---|---| | Common Data | GetResidentData |
- `license_plate_state` (string, required, nullable) — The license plate state of the resident vehicle | Interface | Method | |---|---| | Common Data | GetResidentData |
- `notes` (any, required) — Notes associated with the resident vehicleThis field will always be null for YARDI
- `custom_data` (V1ResidentsIdGetOutputResultsVehiclesItemsCustomData, required, nullable)

### V1ResidentsIdGetOutputResultsLeasesMetaDataItems

- `lease_id` (string, required) — The Propexo unique identifier for the lease | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |
- `x_resident_type` (string, required, nullable) — The external type of the resident from the integration vendor | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |
- `resident_type_normalized` (V1ResidentsIdGetOutputResultsLeasesMetaDataItemsResidentTypeNormalized, required, nullable) — Resident type from Propexo | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |
- `move_in_date` (string, required, nullable) — The move-in date associated with the resident | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |
- `move_out_date` (string, required, nullable) — The move-out date associated with the resident | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |
- `notice_date` (string, required, nullable) — The date the resident gave notice | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |
- `custom_data` (V1ResidentsIdGetOutputResultsLeasesMetaDataItemsCustomData, required, nullable)
- `last_seen` (string, required, nullable) — The date the record was last seen from the PMS

### V1ResidentsIdGetOutputResultsPetsItemsCustomData

### V1ResidentsIdGetOutputResultsVehiclesItemsCustomData

### V1ResidentsIdGetOutputResultsLeasesMetaDataItemsResidentTypeNormalized

Resident type from Propexo | Interface | Method | |---|---| | Common Data | GetResidents | | Common Data | GetResidentsByDate | | Common Data | GetResidentsByStatus |

### V1ResidentsIdGetOutputResultsLeasesMetaDataItemsCustomData

## Examples

**Response**

```json
{
  "meta": {
    "orderBy": [
      {}
    ],
    "offset": 0,
    "limit": 100,
    "hasMore": true,
    "total": 1000
  },
  "results": {
    "id": "clwktsp9v000008l31iv218hn",
    "created_at": "2024-03-21T15:38:08.337Z",
    "updated_at": "2024-03-22T10:59:45.119Z",
    "last_seen": "2024-03-22T10:59:45.119Z",
    "x_id": "t000123",
    "address_1_alternate": null,
    "address_1": "123 Sunset Blvd",
    "address_2_alternate": null,
    "address_2": "Suite 23",
    "balance_in_cents": null,
    "city_alternate": null,
    "city": "Los Angeles",
    "country_alternate": null,
    "country": "United States",
    "custom_data": {},
    "date_of_birth": "1992-04-18T00:00:00.000Z",
    "email_1": "maya.chen@example.com",
    "email_2": null,
    "first_name": "Maya",
    "is_employee": null,
    "last_name": "Chen",
    "late_balance_in_cents": null,
    "middle_name": null,
    "notes": null,
    "phone_1_type": "MOBILE",
    "phone_1": "4155550142",
    "phone_2_type": "HOME",
    "phone_2": "4155550198",
    "state_alternate": null,
    "state": "CA",
    "zip_alternate": null,
    "zip": "90069",
    "pets": [
      {
        "id": "clwktsp9v000008l31iv218hn",
        "created_at": "2024-03-21T15:38:08.337Z",
        "updated_at": "2024-03-22T10:59:45.119Z",
        "last_seen": "2024-03-22T10:59:45.119Z",
        "x_id": "cl8k2nqwe0019jsxq9ab1c2dw",
        "name": "Maple",
        "type": "Dog",
        "breed": "Labrador Retriever",
        "gender_raw": "Female",
        "age_in_years": 4,
        "weight_in_pounds": 62,
        "is_fixed": true,
        "is_service_animal": true,
        "notes": null,
        "custom_data": {}
      }
    ],
    "vehicles": [
      {
        "id": "clwktsp9v000008l31iv218hn",
        "created_at": "2024-03-21T15:38:08.337Z",
        "updated_at": "2024-03-22T10:59:45.119Z",
        "last_seen": "2024-03-22T10:59:45.119Z",
        "x_id": "cl8k2nqwe0020jsxq9ab1c2dx",
        "make": "Honda",
        "model": "Civic",
        "color": "Blue",
        "year": "2019",
        "license_plate_number": "7KRM294",
        "license_plate_state": "CA",
        "notes": null,
        "custom_data": {}
      }
    ],
    "integration_id": "clwh5u07w000508me66sfh3um",
    "integration_vendor": "YARDI",
    "property_id": "clwi5xiix000008l6ctdgafyh",
    "x_lease_id": null,
    "leases_meta_data": [
      {
        "lease_id": "cm2dtyq1600008loze5xgf3fb",
        "x_resident_type": "Primary",
        "resident_type_normalized": "PRIMARY",
        "move_in_date": "2023-01-01T00:00:00.000Z",
        "move_out_date": "2024-01-01T00:00:00.000Z",
        "notice_date": "2023-09-01T00:00:00.000Z",
        "custom_data": {},
        "last_seen": "2024-03-22T10:59:45.119Z"
      }
    ]
  }
}
```

**SDK Code**

```python
import requests

url = "https://api.propexo.com/v1/residents/id"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript
const url = 'https://api.propexo.com/v1/residents/id';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.propexo.com/v1/residents/id"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.propexo.com/v1/residents/id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.propexo.com/v1/residents/id")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.propexo.com/v1/residents/id', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.propexo.com/v1/residents/id");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.propexo.com/v1/residents/id")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```