# Get Person

`GET /people/{id}`

Group: People Management › People · Operation ID: `getPerson`

Returns the person with the given identifier. Use the person's id, not their employeeNumber.

[Open in the interactive reference](https://docs.api.lensing.ai/?op=getPerson)

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `Api-Version` | header | `"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`. |
| `id` | path | string | yes | The unique identifier for the person to return. |

## Response

`200` Success

Under `data` (getPersonOutput):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string | yes | The unique identifier for the person. |
| `employeeNumber` | string | no | The person's business number. |
| `firstName` | string | no | The person's first name. |
| `lastName` | string | no | The person's last name. |
| `middleName` | string | no | The person's middle name. |
| `preferredFirstName` | string | no | The person's preferred first name. |
| `preferredLastName` | string | no | The person's preferred last name. |
| `name` | string | no | The person's full name, in first-name-last-name order. |
| `email` | string | no | The person's work email address. |
| `status` | string | no | The current employment status of the person. Possible values: 'Active', 'Inactive', 'Planned', 'Cancelled'. |
| `employmentCategory` | string | no | The employment category assigned to this person. |
| `startDate` | string | no | The employment start date. Format YYYY-MM-DD. |
| `endDate` | string | no | The employment end date. Format YYYY-MM-DD. Absent while the person is still employed. |
| `probationEndDate` | string | no | The probation end date. Format YYYY-MM-DD. Absent when no probation period applies. |
| `jobId` | string | no | The identifier of this person's active primary job. Absent when the person has no active primary job. There is no endpoint for it. |
| `departmentName` | string | no | The name of the department this person belongs to. Absent when no department is assigned. |
| `positionName` | string | no | The position or job title assigned to this person. Absent when no position is assigned. |
| `managerName` | string | no | The full name of this person's primary manager. Absent when there is no active primary job or no manager assigned to it. |
| `compensation` | object | no | The person's current active compensation record. Absent when no compensation record exists. |
| `compensation.amount` | object | no | The base salary as a currency amount. |
| `compensation.amount.currency` | string | no | The currency of the base salary. Format ISO 4217, for example 'USD'. |
| `compensation.amount.amount` | string (decimal) | no | The numeric value of the base salary, in the given currency. |
| `compensation.paymentFrequency` | string | no | The frequency at which this person is paid. Possible values: 'monthly', 'biweekly', 'weekly', 'yearly'. |
| `compensation.unit` | string | no | The unit the base salary is measured in. Possible values: 'annually', 'quarterly', 'monthly', 'semiMonthly', 'weekly', 'biWeekly', 'daily', 'hourly', 'fixed'. |
| `compensation.monthlyAmount` | object | no | The base salary converted to a monthly amount. Only the 'annually' and 'hourly' units are converted. For every other unit this repeats the base salary unchanged and is not a monthly figure. |
| `compensation.monthlyAmount.currency` | string | no | The currency of the monthly-equivalent salary. Format ISO 4217, for example 'USD'. |
| `compensation.monthlyAmount.amount` | string (decimal) | no | The numeric value of the monthly-equivalent salary, in the given currency. |
| `compensation.salaryType` | string | no | The name of the compensation type. Absent when none is assigned. |
| `compensation.salaryCode` | string | no | The code of the compensation type. Absent when the type has no code or none is assigned. |
| `compensation.startDate` | string | no | The date from which this compensation record is effective. Format YYYY-MM-DD. |
| `compensation.endDate` | string | no | The date on which this compensation record expires. Format YYYY-MM-DD. Absent when it is open-ended. |
| `entityName` | string | no | The name of the legal entity this person belongs to. |
| `locationName` | string | no | The name of this person's work location. Absent when none is assigned. |
| `customFields` | UnknownObject | no | The person's custom field values, as key-value pairs of field name and value. |
| `lastModifiedDate` | string (date-time) | yes | The date and time the person record last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ. |
| `externalIdentifiers` | array of object | no | The external identifiers owned by other systems, at most one per fieldName. Absent when the person has none. |
| `externalIdentifiers[].fieldName` | string | yes | The configured key of the external identifier, a camelCase slug such as 'netsuiteEmployeeId'. It is the fieldName of an existing employee external-identifier configuration. |
| `externalIdentifiers[].value` | string | yes | The identifier as the source system holds it. |
| `externalIdentifiers[].externalUrl` | string | no | An absolute http(s) link to the object in the source system. Absent when none is stored. |

## Errors

| Code | Status |
| --- | --- |
| `NOT_FOUND` | 400 |

## Statuses

- `400` — Invalid request or business failure. Codes: NOT_FOUND
- `401` — Missing or invalid access token
- `403` — Not authorized
- `404` — Not found
- `429` — Too many requests
- `500` — Internal server error
