Skip to main content
RescueConsole keeps a single record for every person your organization touches. Someone who applied to adopt, then became a foster, then started volunteering is one person — not three separate contacts in different lists. The People API reflects this model: each record can carry multiple roles simultaneously, and every role’s history sits in one place. Use this API to look up people by ID, list your contacts with filters, create new person records, and update information as it changes.
A person can hold multiple roles at the same time — adopter, foster, volunteer, and donor are all valid roles for the same record. The roles array on each person reflects every role currently assigned. When you create or update a record, pass the full intended list of roles rather than a single value; the API replaces the roles array with what you send.

List People

Retrieve a paginated list of person records.

Query Parameters

integer
default:"1"
Page number to retrieve.
integer
default:"25"
Number of records per page. Maximum 100.
string
Filter to people who hold a specific role. Accepted values include adopter, foster, volunteer, donor. Can be specified multiple times.
string
Filter by exact email address.
string
Filter to people who have a specific tag applied.
string
Full-text search across name, email, and phone fields.

Example Request

Response


Retrieve a Person

Fetch the full record for a single person by ID.

Path Parameters

string
required
The unique ID of the person record.

Example Request

Response Fields

string
The unique identifier for this person record.
string
The person’s first name.
string
The person’s last name.
string
Primary email address.
string
Primary phone number in E.164 format (e.g. +14155550182). May be null.
object
Structured address object. Fields vary by country.
array of strings
All roles currently held by this person. Possible values include adopter, foster, volunteer, donor. An empty array means no roles are assigned.
array of strings
Custom tags applied to this person’s record.
string
Internal notes visible to your team. May be null.
string
IANA time zone identifier (e.g. America/New_York). Used to display shift times in the person’s local time.
string (ISO 8601)
Timestamp when the record was created.
string (ISO 8601)
Timestamp when the record was last updated.

Example Response


Create a Person

Add a new person record to your organization.

Request Body

string
required
The person’s first name.
string
required
The person’s last name.
string
required
Primary email address. Must be unique within your organization.
string
Primary phone number. Provide in E.164 format (e.g. +14155550182) for best results.
object
Structured address. Accepts line1, line2, city, state, postalCode, and country fields.
array of strings
Roles to assign. Accepted values: adopter, foster, volunteer, donor. Pass an empty array or omit to create a person with no roles yet.
array of strings
Tags to apply to the person’s record.
string
Internal notes about this person.
string
IANA time zone identifier. Defaults to your organization’s time zone if omitted.

Example Request

Response

Returns 201 Created with the full person record as the response body.

Update a Person

Update one or more fields on an existing person record. Only fields included in the request body are changed.

Path Parameters

string
required
The unique ID of the person record to update.

Request Body

All fields are optional. Include only what you want to change.
string
Updated first name.
string
Updated last name.
string
Updated email address. Must remain unique within your organization.
string
Updated phone number in E.164 format.
object
Updated address. Providing this field replaces the entire address object.
array of strings
Updated roles list. This replaces the entire roles array — include all roles you want the person to hold after the update.
array of strings
Updated tags list. This replaces the entire tags array.
string
Updated internal notes. Pass an empty string to clear existing notes.
string
Updated IANA time zone identifier.

Example Request

Response

Returns 200 OK with the full updated person record as the response body.