Read

Pageable Endpoints

People endpoints that return multiple records are optionally pagable and follow the below structure. It is recommended to take advantage of this pagination support to prevent network timeouts from excessively large network calls.

Pageable Request Params

PropertyData Type
pageNumberThis is a 0-based index representing the page slice of the data you want to pull back. Each page contains 400 items.

When you get a successful response, you will be returned an object that contains the following properties possible_pages, current_page, and data.

The possible_pages property indicates the number of pages available to page through to get all of the data. The current_page property indicates the 0-based index of the page you just got the data for.

The data property is an array of objects representing the actual records you are trying to retrieve. The data array will never be more than 400 items deep per page.

Should you specify a page query param in your request that is out of bounds with the possible_pages, you will get back an empty array in the data property.

Get Single Person

GET - /v2/companies/<company_id>/people/<person_id>

Responses:

Successful Response

Returns single Person object.

Get all People belonging to a Group

GET - /v2/companies/<company_id>/groups/<group_id>/people

Note: This is a pageable endpoint

Responses:

Successful Response

Returns array of Person objects.

Get filtered People belonging to a Group

GET - /v2/companies/<company_id>/groups/<group_id>/people?<query_params>

Note: This is a pageable endpoint

By sending query params along with your git request, you can limit the returned results to just those that match your parameters. Multiple query params provided in a single request will be treated as AND logic. All params will be evaluated as exact value matches.

Supported Query Params

  • first_name
  • last_name
  • email
  • employee_number
  • Any Custom Field's "integration_name"
  • The following query params accept ISO 8601 date strings
    • created_at
    • created_before (inclusive of the date passed in)
    • created_after (inclusive of the date passed in)
    • updated_at
    • updated_before (inclusive of the date passed in)
    • updated_after (inclusive of the date passed in)

The before/after params around created_at and updated_at fields can be used in conjunction with each other.

Ex. Find all people that were created sometime between January 1st and January 15th of 2024:

/v2/companies/_\<company_id>_/people?created_after=2024-01-01&created_before=2024-01-15

Ex.
/v2/companies/*<company_id>*/groups/*<group_id>*/people?employee_number=123&my_custom_field=northwest

Responses:

Successful Response

Returns array of Person objects that match the query params.

Get all People in the company

GET - /v2/companies/<company_id>/people

Note: This is a pageable endpoint

Responses:

Successful Response

Returns array of Person objects.

Get filtered People in the company

GET - /v2/companies/<company_id>/people?<query_params>

Note: This is a pageable endpoint

By sending query params along with your git request, you can limit the returned results to just those that match your parameters. Multiple query params provided in a single request will be treated as AND logic. All params will be evaluated as exact value matches.

Supported Query Params

  • first_name
  • last_name
  • email
  • employee_number
  • Or any Custom Field's "integration_name"

Ex.
/v2/companies/*<company_id>*/people?employee_number=123&my_custom_field=northwest

Responses:

Successful Response

Returns array of Person objects that match the query params.


What’s Next