---
title: "List work-contracts"
method: GET
path: "/directory/api/4.0/work-contracts"
tags: ["Work-Contracts"]
---

# List work-contracts

`GET /directory/api/4.0/work-contracts`

Retrieve a paginated collection of work-contracts.

## Query parameters

- `page` integer
- `limit` integer
- `fields.root` 'count'
- `ownerId` integer[]
- `isApplicable` boolean
- `isArchived` boolean
- `typeId` integer[]
- `establishmentId` integer[]

## Response `200`

OK

- object
  - `items` WorkContract[]
    - `id` integer — Unique identifier of this work-contract.
    - `ownerId` integer — Unique identifier of the employee this work-contract belongs to.
    - `externalId` string, nullable — Third-party identifier of this work-contract. May be not unique.
    - `typeId` integer — Identifier of the work-contract template this work-contract conforms to. Determines whether certain optional properties are required.
    - `startsOn` string, date — Start date of this work-contract. Format: `YYYY-mm-DD`.
    - `isApplicable` boolean — **Readonly**. Whether this work-contract applies to the employee at this very moment. A work-contract is considered "applicable" if: 1. It is the ongoing work-contract as of today; 2. If there is none, then it is the first upcoming work-contract; 3. If not, then it is the last work-contract this employee had.
    - `establishmentId` integer — Identifier of the establishment the employee works for.
    - `spcId` integer, nullable — Identifier of the socio-professional category. Refer to the API endpoint: `/organization/structure/api/occupation-categories`.
    - `hiringTypeId` integer, nullable — Identifier of a hiring reason type. Refer to the API endpoint: `/directory/api/work-contract-hiring-types`.
    - `trialPeriodDays` integer, nullable — Number of days of the initial trial period.
    - `renewedTrialPeriodDays` integer, nullable — Number of days of renewed trial period (equal to the length of the initial period, plus the renewal period).
    - `trialPeriodEndDate` string, date, nullable — Initial trial period end date. Format: `YYYY-mm-DD`.
    - `trialPeriodEndDate2` string, date, nullable — Renewed trial period end date. Format: `YYYY-mm-DD`.
    - `temporaryContractGroundId` integer, nullable — Identifier of the temporary contract ground. Refer to the API endpoint: `/directory/api/work-contract-temporary-contract-grounds`.
    - `internshipSupervisorId` integer, nullable — Identifier of the employee/user that acts as internship supervisor.
    - `endsOn` string, date, nullable — End date of this work-contract. Leave `null` if not (yet) known. Format: `YYYY-mm-DD`.
    - `terminationReasonId` integer, nullable — Identifier of the termination reason. Refer to the API endpoint: `/directory/api/work-contract-termination-reasons`.
    - `authorId` integer — **Read-only**. Identifier of the user who created this work-contract.
    - `createdAt` string, date-time — **Read-only**. Timestamp of the moment this work-contract was created.
    - `lastModifierId` integer — **Read-only**. Identifier of the user who last modified this work-contract.
    - `lastModifiedAt` string, date-time — **Read-only**. Timestamp of the moment this work-contract was last updated.
  - `count` integer

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `500` — Unexpected Error

---

[API](https://skmtc.net/luccasoftware/apis/lucca-expenses.md) · [All operations](https://skmtc.net/luccasoftware/apis/lucca-expenses/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/luccasoftware/lucca-expenses/revisions/110f9897756c/schema)
