---
title: "List a Project's Services"
method: GET
path: "/timmi-project/api/v4/projects/{id}/project-services"
tags: ["Project services"]
---

# List a Project's Services

`GET /timmi-project/api/v4/projects/{id}/project-services`

List all services from a project identified by its unique id.

## Response `200`

OK

- object
  - `next` string, uri, nullable
  - `prev` string, uri, nullable
  - `count` integer, nullable
  - `items` ProjectService[]
    - `id` integer
    - `name` string, required
    - `code` string
    - `description` string, nullable — Optional description of the expected work to be done.
    - `jobQualificationRateId` integer
    - `jobQualificationRate` object — The expected job qualification rate for assigned users.
      - `id` integer
      - `standardRateCardId` integer
      - `jobQualificationId` integer
      - `jobQualification` object
        - `id` integer
        - `name` string
      - `isBillable` boolean
      - `billingRate` PriceRate — Represents an amount of money per day or hour.
        - `price` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
          - `amount` number
          - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
        - `unit` 'day' | 'hour' — Duration unit: days or hours.
      - `costRate` PriceRate — Represents an amount of money per day or hour.
        - `price` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
          - `amount` number
          - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
        - `unit` 'day' | 'hour' — Duration unit: days or hours.
    - `status` 'ongoing' | 'suspended' | 'completed' — Time submission is disabled whenever a service is suspended or done. Once done, the service revised budget is brought to the actual amount spent.
    - `initialTimeEstimate` Duration
      - `iso` string, duration — ISO-8601 formatted duration.
      - `unit` 'day' | 'hour'
    - `revisedTimeEstimate` Duration
      - `iso` string, duration — ISO-8601 formatted duration.
      - `unit` 'day' | 'hour'
    - `initialBudget` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
      - `amount` number
      - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
    - `revisedBudget` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
      - `amount` number
      - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
    - `estimatedOverrun` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
      - `amount` number
      - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
    - `billRate` PriceRate — Represents an amount of money per day or hour.
      - `price` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
        - `amount` number
        - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
      - `unit` 'day' | 'hour' — Duration unit: days or hours.
    - `price` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
      - `amount` number
      - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
    - `discount` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
      - `amount` number
      - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
    - `discountRate` number, nullable
    - `subContractingRelationship` 'none' | 'external' | 'internal'
    - `subcontractType` 'fixedPrice' | 'timeAndMaterials', nullable
    - `subcontractingFixedCost` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
      - `amount` number
      - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
    - `subcontractingCostRate` PriceRate — Represents an amount of money per day or hour.
      - `price` Price — Represents an amount of money. Is a value object containing a decimal number and a currency.
        - `amount` number
        - `currencyId` 'EUR' | 'USD' | 'CAD' | '...'
      - `unit` 'day' | 'hour' — Duration unit: days or hours.
    - `subcontractingProjectId` integer, nullable — In case of "internal sub-contracting", i.e. this project-service was sub-contracted to another organization in Lucca Project. Identifier of the project that represents the externalized services in the other organization.
    - `createdAt` string, date-time — Timestamp of the service creation.
    - `lastModifiedAt` string, date-time — Timestamp of the service last update.

## Other responses

- `400` — Problem
- `401` — Problem
- `404` — Problem
- `500` — Problem

---

[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)
