---
title: "List employment history for a list of employees."
method: GET
path: "/bulk/people/employment"
tags: ["Employee Tables"]
---

# List employment history for a list of employees.

`GET /bulk/people/employment`

## Request

- Base URL: `https://api.hibob.com/v1`
- URL: `https://api.hibob.com/v1/bulk/people/employment`
- Auth: one of:
  - HTTP basic
  - HTTP bearer

Returns a list of historical employment entries from the employment table for all employees or a specific list of employees.

Each employment entry includes the working pattern assigned to this employee. To learn more about working patterns, see [How to work with Working patterns](https://apidocs.hibob.com/docs/how-to-work-with-working-patterns).

**Required permissions**

In order to access the employment history of each requested employee, the service user making the call must have the following permissions:

*   For all the employment table entries: **People's Data > People's fields > Employment > View history**, and **View** on the category or required fields.

*   For the current effective employment entry only: **People's Data > People's fields > Employment > View**.
*   For the employees: **People's Data > Access data for**: Make sure the employees are in the list. Employees that are not listed and were specifically requested will be listed under \`errors\` in the response.

**Pagination**

This endpoint uses cursor-based pagination to handle large number of table entries. To learn more, see [Pagination in Bob's API](https://apidocs.hibob.com/docs/pagination).

## Query parameters

- `limit` number
- `cursor` string
- `employeeIds` string
- `includeArchived` boolean

## Response `200`

Employment table entries.

- BulkEmploymentTableResponse
  - `results` object[]
    - `employeeId` string
    - `values` EmploymentEntries[]
      - `values` EmploymentEntry[]
        - `id` integer: ID.
        - `reason` string: The reason for this change.
        - `effectiveDate` string, date, required: The date this entry becomes effective.
        - `personalWorkingPatternType` string: indicates whether the working pattern personal (adjusted). Can be null (no personal defined), "custom", "library" or "flexible".
        - `actualWorkingPattern` union
          - WorkingPatternHourly
            - `workingPatternType` string
            - `days` object
              - …
            - `hoursPerDay` number
            - `workingPatternId` number
          - WorkingPatternBiWeekly
            - `workingPatternType` string
            - `firstWeek` object
              - …
            - `secondWeek` object
              - …
            - `hoursPerDay` number
            - `workingPatternId` number
          - WorkingPatternFlexible
            - `workingPatternType` string
            - `weeklyWorkPercentage` number
        - `standardWorkingPattern` object: The working pattern that was selected from the library as standard. If null this means the standard is using the site default.
        - `standardWorkingPatternId` number: The working pattern ID that was selected from the library as standard.
        - `workingPattern` object: The personalized (adjusted) working pattern.
        - `siteWorkingPattern` WorkingPatternHourly
          - `workingPatternType` string
          - `days` object
            - `sunday` number
            - `monday` number
            - `tuesday` number
            - `wednesday` number
            - `thursday` number
            - `friday` number
            - `saturday` number
          - `hoursPerDay` number
          - `workingPatternId` number
        - `hoursInDayNotWorked` number: Based on the actual working pattern
        - `weeklyHours` number: Based on the actual working pattern
        - `fte` number: the FTE percentage for this entry as calculated based on the working pattern
        - `calendarName` string: The selected Holiday calendar
        - `calendarId` integer: The selected Holiday calendar
        - `contract` string: Contract, can be Full-Time, Part-Time, Shifts
        - `type` string: Type as appears in the Employment Type list. Can be Permanent, Temporary, Apprentice, Contractor or any custom value.
        - `salaryPayType` string: Salary pay type, can be Salaries or Hourly.
        - `endEffectiveDate` string, date: For entries that are not active - this is the date this entry became not effective.
        - `activeEffectiveDate` string, date: The effective date of the active working pattern.
        - `isCurrent` boolean: Is 'true' when this is the effective entry which is currently active.
        - `canBeDeleted` boolean
        - `modificationDate` string, date: The date this entry was modified.
        - `CreationDate` string, date: The date this entry was created.
        - `flsaCode` string: FLSA code, can be Exempt or Non-Exempt.
        - `change` object: Details of the last change and the ID of the user who updated this entry
          - `reason` string
          - `changedBy` string
          - `changedById` string
      - `restricted_columns` RestrictedColumnsMetadata: Indicates which columns were filtered from the response due to field-level permissions. This object is only present when the service user has partial column permissions. To learn more, see <a href="https://apidocs.hibob.com/docs/employee-data-api-field-level-permissions#detecting-restricted-columns-in-api-responses" target="_blank">Field level permissions</a>.
        - `no_view_permission` string[]: Columns filtered because the service user lacks View permission for these fields.
        - `no_view_history_permission` string[]: Columns filtered because the service user lacks View History permission. Only present for historical tables (work, employment, salaries, lifecycle).
  - `response_metadata` object
    - `next_cursor` string: Contains a string value if there is a 'next' page of data. `null` if there is no more data. Use this value as the `cursor` parameter for pagination to get the next page.
  - `errors` object[]
    - `employeeId` object
      - `error` string
      - `message` string

## Other responses

- `400`: Bad request.
- `403`: Forbidden. The service user does not have permissions to access this table or employees. Check the permissions as explained in the endpoint description.

---

[API](https://skmtc.dev/hibob/apis/employee-data-api.md) - [All operations](https://skmtc.dev/hibob/apis/employee-data-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hibob/apis/employee-data-api/revisions/9ac25373a355?raw)
