---
title: "List people"
method: GET
path: "/people"
tags: ["People"]
---

# List people

`GET /people`

## Request

- Base URL: `https://api.pipelinecrm.com/api/v3`
- URL: `https://api.pipelinecrm.com/api/v3/people`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer and API key in header `app-key`
  - API key in query parameter `api_key` and API key in query parameter `app_key`

**Filtered request example** — People at companies named Acme with lead status 2, changed in the last week:

```
curl -g -H "Authorization: Bearer pcrm_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
  "https://api.pipelinecrm.com/api/v3/people.json?conditions[person_company_name]=Acme&conditions[person_status][]=2&conditions[person_modified][selection]=last_7&sort=person_last_name&per_page=100"
```

## Query parameters

- `conditions` PersonConditions
  - `lead_source` integer: Returns records associated to the [Lead source](#tag/lead-sources) with this ID
  - `person_all_emails` string: Any of the person's email addresses (work, home, secondary) equals this value exactly. Several values may be given.
  - `person_bounced` 'Yes' | 'No': Returns records with the given bounced state
  - `person_city` string: Returns records that match a `LIKE` query on the city field
  - `person_company_id` union: One id, several ids as repeated `[]=` parameters, or a comma-separated list.
    - integer
    - string
    - integer[]
  - `person_company_name` string: Returns records that match a `LIKE` query on the name of the associated [Company](#tag/companies)
  - `person_converted` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_converted_at` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_country` string: Returns records that match a `LIKE` query on the country field
  - `person_created` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_created_at` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_created_by_user` integer: Returns records created by the [User](#tag/users) with this ID
  - `person_date_of_first_activity` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_days_since_last_activity` union: A numeric range filter: `[from]=1000&[to]=5000` (either bound may be omitted on most fields). Where noted, the literal strings `__NONE__` (field is empty) and `__HAS_VALUE__` (field is set) are also accepted.
    - object
      - `from` number
      - `to` number
    - '__NONE__' | '__HAS_VALUE__'
  - `person_email` string: Returns records that match a `LIKE` query on the email address field
  - `person_email2` string: Returns records that match a `LIKE` query on the other email address field
  - `person_email_in` string: Work email address is exactly one of the given values; several values may be given.
  - `person_fax` string: Returns records that match a `LIKE` query on the `fax` field
  - `person_first_name` string: Returns records that match a `LIKE` query on the `first_name` field
  - `person_full_name` string: Returns records that match a `LIKE` query on the full name (combination of `first_name` and `last_name` fields)
  - `person_home_address_1` string: Returns records that match a `LIKE` query on the home address 1 field
  - `person_home_address_2` string: Returns records that match a `LIKE` query on the home address 2 field
  - `person_home_city` string: Returns records that match a `LIKE` query on the home city field
  - `person_home_country` string: Returns records that match a `LIKE` query on the home country field
  - `person_home_email` string: Returns records that match a `LIKE` query on the home email address field
  - `person_home_phone` string: Returns records that match a `LIKE` query on the `home_phone` field
  - `person_home_state` string: Returns records that match a `LIKE` query on the home state field
  - `person_home_zip` string: Returns records that match a `LIKE` query on the home zip code field
  - `person_hours_to_first_activity` union: A numeric range filter: `[from]=1000&[to]=5000` (either bound may be omitted on most fields). Where noted, the literal strings `__NONE__` (field is empty) and `__HAS_VALUE__` (field is set) are also accepted.
    - object
      - `from` number
      - `to` number
    - '__NONE__' | '__HAS_VALUE__'
  - `person_id` integer: Returns records with this [Person](#tag/people) ID
  - `person_id_not` union: One id, several ids as repeated `[]=` parameters, or a comma-separated list.
    - integer
    - string
    - integer[]
  - `person_import_name` string: Returns records that match a `LIKE` query on the import name field
  - `person_imported_at` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_is_key_contact` 'Yes' | 'No': Returns records with the given key contact state
  - `person_last_emailed_at` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_last_name` string: Returns records that match a `LIKE` query on the `last_name` field
  - `person_linked_in_url` string: LinkedIn URL contains this text.
  - `person_mobile` string: Returns records that match a `LIKE` query on the `mobile` field
  - `person_modified` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_name` string: Returns records that match a `LIKE` query on the `first_name` or `last_name` fields
  - `person_owner` integer: Returns records owned by the [User](#tag/users) with this ID
  - `person_owner_team` integer: Returns records owned by members of the team with this ID
  - `person_phone` string: Returns records that match a `LIKE` query on the `phone` field
  - `person_phones` string: Returns records that match a `LIKE` query on the `phone`, `home_phone` or `mobile` field
  - `person_phones_contains` string: Any of the person's phone numbers contains these digits; formatting characters are ignored.
  - `person_position` string: Returns records that match a `LIKE` query on the position field
  - `person_relationship` string: Returns records that match a `LIKE` query on the relationship field
  - `person_shared_with` integer[]: Returns records shared with the [Users](#tag/users) with these ID
  - `person_simple_search` string: Returns records that match a `LIKE` query on `first_name`, `last_name`, `email` or associated [Company](#tag/companies) name
  - `person_source` union: One id, several ids as repeated `[]=` parameters, or a comma-separated list.
    - integer
    - string
    - integer[]
  - `person_state` string: Returns records whose work state starts with this value. A US state name and its two-letter code match each other (`Texas` also returns `TX`)
  - `person_status` integer: Returns records associated to the [Lead status](#tag/lead-statuses) with this ID
  - `person_summary` string: Returns records that match a `LIKE` query on the summary field
  - `person_tag_names` string[]: Returns records that match a `LIKE` query on the tag names
  - `person_tags` integer[]: Returns records associated to the [tags](#tag/predefined-contacts-tags) with these IDs
  - `person_type` 'Lead' | 'Contact': Returns records of the specified type - either `Contact` or `Lead`
  - `person_unsubscribed` 'Yes' | 'No': Returns records with the given unsubscribed state
  - `person_updated_at` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_viewed_at` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `person_website` string: Returns records that match a `LIKE` query on the website field
  - `person_work_address_1` string: Returns records that match a `LIKE` query on the work address 1 field
  - `person_work_address_2` string: Returns records that match a `LIKE` query on the work address 2 field
  - `person_work_zip` string: Work postal code starts with this text. Alias of person_zip.
  - `person_zip` string: Returns records that match a `LIKE` query on the zip code field
  - `company_address` string: Return records that have an address that exactly matches or starts with the provided string
  - `company_address2` string: Return records that have a secondary address that exactly matches or starts with the provided string
  - `company_city` string: Return records that have a city that exactly matches or starts with the provided string
  - `company_country` string: Country starts with this text (case-insensitive).
  - `company_created` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `company_created_at` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `company_created_by_user` integer: Return records that were created by the given user
  - `company_description` string: Return records that have a description that exactly matches or starts with the provided string
  - `company_email` string: Return records that have an email that exactly matches or starts with the provided string
  - `company_fax` string: Return records that have a fax number that exactly matches or starts with the provided string
  - `company_id` integer: The company with given company_id. Note: you can specify a comma-separated list of ids to retrieve more companies at once
  - `company_id_not` union: One id, several ids as repeated `[]=` parameters, or a comma-separated list.
    - integer
    - string
    - integer[]
  - `company_import_name` string: Return records that have an import name that exactly matches or starts with the provided string
  - `company_imported_at` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `company_is_customer` 'Yes' | 'No': Return records that are customers
  - `company_linked_in_url` string: LinkedIn URL contains this text.
  - `company_modified` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `company_name` string: Return records that have a name that exactly matches or starts with the provided string
  - `company_name_eq` string: Return records that have a name that exactly matches the provided string
  - `company_owner` integer: Return records that have an owner with the given ID
  - `company_owner_team` integer: Return records that have an owner in the given team
  - `company_phone` string: Return records that have a phone number that exactly matches or starts with the provided string
  - `company_phone2` string: Second phone number contains these digits; formatting characters are ignored.
  - `company_phone3` string: Third phone number contains these digits; formatting characters are ignored.
  - `company_phone4` string: Fourth phone number contains these digits; formatting characters are ignored.
  - `company_phones_contains` string: Any of the company's phone numbers contains these digits; formatting characters are ignored.
  - `company_shared_with` integer[]: Return records that have been shared with the given users
  - `company_state` string: Return records that have a state that exactly matches or starts with the provided string
  - `company_tags` integer[]: Return records that have the given tag IDs
  - `company_total_pipeline` union: A numeric range filter: `[from]=1000&[to]=5000` (either bound may be omitted on most fields). Where noted, the literal strings `__NONE__` (field is empty) and `__HAS_VALUE__` (field is set) are also accepted.
    - object
      - `from` number
      - `to` number
    - '__NONE__' | '__HAS_VALUE__'
  - `company_updated` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `company_updated_at` union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
    - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
    - object: An explicit range. Either bound may be omitted.
      - `from_date` string, date
      - `to_date` string, date
    - object: A relative period counted in whole units.
      - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
      - `duration` integer, required
  - `company_web` string: Return records that have a website that exactly matches or starts with the provided string
  - `company_won_value` union: A numeric range filter: `[from]=1000&[to]=5000` (either bound may be omitted on most fields). Where noted, the literal strings `__NONE__` (field is empty) and `__HAS_VALUE__` (field is set) are also accepted.
    - object
      - `from` number
      - `to` number
    - '__NONE__' | '__HAS_VALUE__'
  - `company_worked_on_by` integer: Return records that have been worked on by the given user
  - `company_zip` string: Return records that have a postal code that exactly matches or starts with the provided string
  - `customer_days_in_health` union: A numeric range filter: `[from]=1000&[to]=5000` (either bound may be omitted on most fields). Where noted, the literal strings `__NONE__` (field is empty) and `__HAS_VALUE__` (field is set) are also accepted.
    - object
      - `from` number
      - `to` number
    - '__NONE__' | '__HAS_VALUE__'
  - `customer_health_score` integer: Return records that have a customer health score that exactly matches the provided integer
  - `next_milestone_due` union: A filter on a calendar date (no time of day). Takes every form a date range filter takes: a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`. It also takes `[selection]=upcoming_anniversary&[duration]=30`, which matches dates whose month and day fall in the next 30 days of any year, such as birthdays.
    - union: A date or datetime filter. Send ONE of the forms below (see the Filtering guide): a single day `2026-01-15`; a bounded range `[from_date]=2026-01-01&[to_date]=2026-03-31` (either side optional); a relative period `[selection]=last_30` or `[selection]=this_quarter`; or a relative count `[selection]=last_x_days&[duration]=14`.
      - string: A single day (`YYYY-MM-DD`) or a relative period keyword such as `today`, `yesterday`, `this_week`, `last_week`, `next_week`, `this_month`, `last_month`, `next_month`, `this_quarter`, `last_quarter`, `next_quarter`, `this_year`, `last_year`, `year_to_date`, `last_7`, `last_30`, `last_60`, `last_90`, `next_7`, `next_30`, `next_60`, `next_90`, `last_3_months`, `next_3_months`, `last_6_months`, `next_6_months`, `last_12_months`, `next_12_months`, `past_due`, `future`.
      - object: An explicit range. Either bound may be omitted.
        - `from_date` string, date
        - `to_date` string, date
      - object: A relative period counted in whole units.
        - `selection` 'last_x_days' | 'next_x_days' | 'last_x_weeks' | 'next_x_weeks' | 'last_x_months' | 'next_x_months' | 'last_x_quarters' | 'next_x_quarters' | 'last_x_years' | 'next_x_years' | 'older_than', required
        - `duration` integer, required
    - object: Month and day within the next `duration` days, in any year (birthdays, anniversaries). `duration` 0 means today; values above 365 are treated as 365.
      - `selection` 'upcoming_anniversary', required
      - `duration` integer, required
  - `next_milestone_name` string: The customer's next milestone name contains this text.
  - `next_milestone_status` string: The customer's next milestone has this status: `not_started`, `in_progress`, `blocked` or `complete`, or the number it is stored as (0 to 3). The next milestone is the earliest one not yet complete, so `complete` normally matches nothing. `none` or `__NONE__` matches customers with no next milestone, `__HAS_VALUE__` those with one; any other value matches nothing.

## Response `200`

Successful Response

- object
  - `entries` PersonAll[], required
    - `id` integer: Unique identifier
    - `user` object, nullable: A convenience object to get the name of the person [owner](#tag/users)
      - `id` integer
      - `first_name` string
      - `last_name` string
    - `owner` string: The owner's full name, or `N/A` when the record has no owner.
    - `created_by_user` object, nullable: The [user](#tag/users) who created the record
      - `id` integer
      - `first_name` string
      - `last_name` string
    - `company` object, nullable: A convenience object for the person's [company](#tag/companies)
      - `id` integer
      - `name` string
    - `deals` object[]: The [deals](#tag/deals) the person is associated with
      - `id` integer
      - `name` string
    - `currency` object: The currency `total_pipeline` and `won_deals_total` are expressed in (the caller's, falling back to the account's).
      - `id` integer
      - `name` string
      - `code` string
      - `symbol` string
      - `decimal_places` integer
    - `total_pipeline` union: The rounded value of the person's open deals, in `currency`. An integer, or a decimal string for large values.
      - integer
      - string
    - `won_deals_total` union: The rounded value of the person's won deals, in `currency`. An integer, or a decimal string for large values.
      - integer
      - string
    - `is_sample` boolean: Marks a record created by the sample-data generator.
    - `viewed_at` string, nullable: When the caller last opened the record in the app.
    - `project_shared_user_ids` integer[]: Users who see the record through a shared project.
    - `has_work_address` boolean
    - `has_home_address` boolean
    - `has_company_address` boolean: When `true`, the `company_address_1`, `company_address_2`, `company_city`, `company_state`, `company_postal_code` and `company_country` fields are present.
    - `work_address_google_maps_url` string, nullable
    - `home_address_google_maps_url` string, nullable
    - `company_address_google_maps_url` string, nullable
    - `company_address_1` string, nullable: Present when `has_company_address` is `true`.
    - `company_address_2` string, nullable: Present when `has_company_address` is `true`.
    - `company_city` string, nullable: Present when `has_company_address` is `true`.
    - `company_state` string, nullable: Present when `has_company_address` is `true`.
    - `company_postal_code` string, nullable: Present when `has_company_address` is `true`.
    - `company_country` string, nullable: Present when `has_company_address` is `true`.
    - `date_of_first_activity` string, nullable: Deal Intelligence. Present for accounts with the feature enabled.
    - `days_since_last_activity` integer, nullable: Deal Intelligence. Present for accounts with the feature enabled.
    - `hours_to_first_activity` string, nullable: Deal Intelligence, decimal hours serialized as a string. Present for accounts with the feature enabled.
    - `lead_status` object, nullable: A convenience object for this person record's [lead status](#tag/lead-statuses)
      - `id` integer
      - `name` string
      - `hex_color` string, nullable
    - `lead_source` object, nullable: A convenience object for this person record's [lead source](#tag/lead-sources)
      - `id` integer
      - `name` string
    - `image_mobile_url` string: A link to the person's mobile avatar. Mobile avatar is scaled to maximum of 100x100 pixels.
    - `predefined_contacts_tags` object[]: A convenience object for this person record's [tags](#tag/predefined-contacts-tags)
      - `id` integer
      - `name` string
    - `possible_notify_user_ids` integer[]: The list of [User](#tag/users) IDs that can be added to `notify_user_ids` on associated [notes](#tag/activities-notes).
    - `next_entry_name` string, nullable: Name of the next calendar entry due associated with the person
    - `next_entry_id` integer, nullable: The ID of the next calendar entry due associated with the person
    - `next_entry_due` string, nullable: Due date of the next calendar entry due associated with the person
    - `next_entry_all_day` boolean, nullable: Is the next calendar entry due associated with the person an all day event?
    - `created_at` string: Timestamp when the record was created (time zone in user's time zone).
    - `updated_at` string: Timestamp when the record was last touched (time zone in user's time zone).
    - `first_name` string, nullable: The person's first name.
    - `last_name` string, nullable: The person's last name.
    - `full_name` string: The person's full name. Will split on whitespace to set `first_name` and `last_name` fields
    - `summary` string, nullable: Summary or notes on the person.
    - `phone` string, nullable: Person's primary phone number
    - `home_phone` string, nullable: Person's home phone number
    - `mobile` string, nullable: Person's mobile phone number
    - `position` string, nullable: Person's professional position
    - `website` string, nullable: Person's website URL
    - `email` string, nullable: Person's primary email address
    - `email2` string, nullable: Person's secondary email address
    - `home_email` string, nullable: Person's non-professional email address
    - `company_id` integer, nullable: The ID of the [company](#tag/companies) associated to this person
    - `company_name` string, nullable: Associates the [company](#tag/companies) with this name to this person, creating it if none matches.
    - `user_id` integer: The ID of the [user](#tag/users) who owns this person record
    - `lead_status_id` integer: The ID of the [lead status](#tag/lead-statuses) to set for this person
    - `lead_source_id` integer: The ID of the [lead source](#tag/lead-sources) to set for this person
    - `image_thumb_url` string: A link to the person's avatar. Avatar is scaled to maximum of 50x50 pixels.
    - `predefined_contacts_tag_ids` integer[]: IDs of the [tags](#tag/predefined-contacts-tags) to set on this person
    - `work_address_1` string, nullable: First line of work address.
    - `work_address_2` string, nullable: Second line of work address.
    - `work_city` string, nullable: Work address city.
    - `work_state` string, nullable: Work address state.
    - `work_country` string, nullable: Work address country.
    - `work_postal_code` string, nullable: Work address postal code.
    - `home_address_1` string, nullable: First line of Home address.
    - `home_address_2` string, nullable: Second line of Home address.
    - `home_city` string, nullable: Home address city.
    - `home_state` string, nullable: Home address state.
    - `home_country` string, nullable: Home address country.
    - `home_postal_code` string, nullable: Home address postal code.
    - `facebook_url` string, nullable: URL to person's facebook profile
    - `linked_in_url` string, nullable: URL to person's LinkedIn profile
    - `twitter` string, nullable: Person's twitter username
    - `instant_message` string, nullable: Person's IM username
    - `unsubscribed` boolean: Whether or not the person has unsubscribed to newsletters
    - `bounced` boolean: Whether or not the person has had emails sent to them bounce
    - `last_emailed_at` string, nullable: When the person was last emailed timestamp
    - `custom_fields` object: Custom fields for the person. See [custom fields](#tag/custom-fields) section for more info.
    - `shared_user_ids` integer[]: The array of [User](#tag/users) IDs with whom this person's been shared (also known as Collaborators)
    - `relationship` string: The relationship of the person to the [company](#tag/companies) (e.g. "Father", "CEO", "Owner", etc.)
    - `is_key_contact` boolean: Whether or not this person is a key contact for the [company](#tag/companies)
    - `type` 'Contact' | 'Lead': Whether the record is a contact or a lead. Setting it on update converts the record.
    - `deal_ids` integer[]: The [deals](#tag/deals) the person is associated with. Set to the full list; deals left out are disassociated.
    - `fax` string, nullable
    - `created_by_user_id` integer, nullable: The [user](#tag/users) recorded as the creator. Defaults to the authenticated user.
  - `pagination` Pagination, required: Paging details returned alongside `entries` on every paginated list.
    - `page` integer: The page returned. Request another with `?page=N`.
    - `per_page` integer: Page size. `?per_page=N`, capped at 200.
    - `total` integer: Total number of records matching the request across all pages.
    - `pages` integer: Number of pages at this `per_page`.
    - `total_in_account` integer, nullable: Total number of records of this type visible to you before filters were applied. Null when not computed for the endpoint.
    - `page_var` string: Name of the query parameter that selects the page. Always `page`.
    - `url` string, nullable: Path of the request, when the endpoint reports it.

## Other responses

- `401`: Missing, invalid, expired or revoked credentials.
- `403`: The credentials are valid but this user may not perform the action (permissions, a read-only token, or API access switched off).
- `422`: The request was understood but a value is missing, invalid or too long.

---

[API](https://skmtc.dev/pipelinecrm/apis/pipeline-crm-api.md) · [All operations](https://skmtc.dev/pipelinecrm/apis/pipeline-crm-api/llms.txt) · [OpenAPI document](https://skmtc.dev/pipelinecrm/apis/pipeline-crm-api/revisions/53ebfcc83597?raw)
