---
title: "Changes to Get labor efficiency metrics by role"
method: GET
path: "/Metrics/labor"
---

# Changes to Get labor efficiency metrics by role

`GET /Metrics/labor`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 1 of 14 revisions.

- **2026-09-17** `d4ae30be0619`: 18 breaking, 6 warning, 12 info

## Changes

- **2026-09-17** `d4ae30be0619`: 18 breaking, 6 warning, 12 info
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/cost` became nullable for the status `200` (media type: text/plain)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/cost` became nullable for the status `200` (media type: application/json)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/cost` became nullable for the status `200` (media type: text/json)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborCostPercentage` became nullable for the status `200` (media type: text/plain)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborCostPercentage` became nullable for the status `200` (media type: application/json)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborCostPercentage` became nullable for the status `200` (media type: text/json)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/revenuePerLaborHour/percentOfTarget` became nullable for the status `200` (media type: text/plain)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/revenuePerLaborHour/percentOfTarget` became nullable for the status `200` (media type: application/json)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/revenuePerLaborHour/percentOfTarget` became nullable for the status `200` (media type: text/json)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/revenuePerLaborHour/target` became nullable for the status `200` (media type: text/plain)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/revenuePerLaborHour/target` became nullable for the status `200` (media type: application/json)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/revenuePerLaborHour/target` became nullable for the status `200` (media type: text/json)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/totalLaborCost` became nullable for the status `200` (media type: text/plain)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/totalLaborCost` became nullable for the status `200` (media type: application/json)
  - the response property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/totalLaborCost` became nullable for the status `200` (media type: text/json)
  - the `data/oneOf[#/components/schemas/LaborEfficiencyDto]/totalLaborHours` response's property type changed from `integer, string` to `number, string`, and format from `int32` to `double` for status `200` (media type: text/plain)
  - the `data/oneOf[#/components/schemas/LaborEfficiencyDto]/totalLaborHours` response's property type changed from `integer, string` to `number, string`, and format from `int32` to `double` for status `200` (media type: application/json)
  - the `data/oneOf[#/components/schemas/LaborEfficiencyDto]/totalLaborHours` response's property type changed from `integer, string` to `number, string`, and format from `int32` to `double` for status `200` (media type: text/json)
  - removed the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/efficiency` from the response with the `200` status (media type: text/plain)
  - removed the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/efficiency` from the response with the `200` status (media type: application/json)
  - removed the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/efficiency` from the response with the `200` status (media type: text/json)
  - removed the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/revenueGenerated` from the response with the `200` status (media type: text/plain)
  - removed the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/revenueGenerated` from the response with the `200` status (media type: application/json)
  - removed the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/revenueGenerated` from the response with the `200` status (media type: text/json)
  - added the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/hourlyRate` to the response with the `200` status (media type: text/plain)
  - added the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/hourlyRate` to the response with the `200` status (media type: application/json)
  - added the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/hourlyRate` to the response with the `200` status (media type: text/json)
  - added the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/isProvider` to the response with the `200` status (media type: text/plain)
  - added the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/isProvider` to the response with the `200` status (media type: application/json)
  - added the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/laborBreakdown/items/isProvider` to the response with the `200` status (media type: text/json)
  - added the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/ratesConfigured` to the response with the `200` status (media type: text/plain)
  - added the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/ratesConfigured` to the response with the `200` status (media type: application/json)
  - added the optional property `data/oneOf[#/components/schemas/LaborEfficiencyDto]/ratesConfigured` to the response with the `200` status (media type: text/json)
  - the `data/oneOf[#/components/schemas/LaborEfficiencyDto]/totalLaborHours` response's property pattern was changed from `^-?(?:0|[1-9]\d*)$` to `^-?(?:0|[1-9]\d*)(?:\.\d+)?$` for the status `200` (media type: text/plain)
  - the `data/oneOf[#/components/schemas/LaborEfficiencyDto]/totalLaborHours` response's property pattern was changed from `^-?(?:0|[1-9]\d*)$` to `^-?(?:0|[1-9]\d*)(?:\.\d+)?$` for the status `200` (media type: application/json)
  - the `data/oneOf[#/components/schemas/LaborEfficiencyDto]/totalLaborHours` response's property pattern was changed from `^-?(?:0|[1-9]\d*)$` to `^-?(?:0|[1-9]\d*)(?:\.\d+)?$` for the status `200` (media type: text/json)

---

[Operation](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/docs/Metrics/labor/get.md) - [API](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1.md) - [Page](https://skmtc.dev/clinicos/apis/pawthosx-business-api-v1/changes/Metrics/labor/get)
