List positions

Operation ID: positions

Group: People Management › Positions

Open in the interactive reference

GET /people/positions

Read-only: Reads and returns; changes nothing.

Lists positions. The list doesn't include each position's start and end dates or its hiring manager, job profile, and region identifiers. GET people/positions/:id returns those, with the job profile and region names.

Parameters

Name In Type Required Description
Api-Version header string · v1 yes The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version v1.

Query surface

Response

200 Success

Under data, an array of positionsRow:

Field Type Required Filter Sort Description
id string no Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) yes The unique identifier for the position.
positionNumber string | null no Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) yes The system-generated position number, for example 'POS-100010'. Absent while none has been assigned.
name string no Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) yes The display name of the position.
description string | null no no no A free-form description of the position's responsibilities. Absent when none is set.
desiredHeadcount number | null no no yes The target number of people to fill this position.
employeeCount number | null no no yes The number of employees currently in this position.
expectedSalary number | null no no no The expected annual salary for this position, in the entity's currency.
hiringManagerName string | null no no yes The full name of the hiring manager. Absent when none is assigned.
overtimeStatus string | null no Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) no The overtime eligibility of the position. Possible values: 'EXEMPT', 'NON_EXEMPT'.
status string | null no Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) yes The fill status of the position. Possible values: 'unfilled', 'partiallyFilled', 'filled', 'overfilled', 'inactive'.
timelineStatus string | null no Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) yes The timeline status of the position. Possible values: 'planned', 'inactive', 'active', 'canceled'.
lastModifiedDate date-time | null no Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) yes The date and time the position record last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ.
{
  "data": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "positionNumber": "<positionNumber>",
      "name": "<name>",
      "description": "<description>",
      "desiredHeadcount": 0,
      "employeeCount": 0,
      "expectedSalary": 0,
      "hiringManagerName": "<hiringManagerName>",
      "overtimeStatus": "<overtimeStatus>",
      "status": "<status>",
      "timelineStatus": "<timelineStatus>",
      "lastModifiedDate": "2026-01-15T09:30:00.000Z"
    }
  ],
  "pagination": {
    "hasMore": true,
    "nextCursor": "<nextCursor>"
  }
}

Statuses