---
title: "Update a deduction"
method: PATCH
path: "/hris/{connection_id}/deduction/{id}"
tags: ["hris", "deduction"]
---

# Update a deduction

`PATCH /hris/{connection_id}/deduction/{id}`

## Request

- Base URL: `http://api.unified.to`
- URL: `http://api.unified.to/hris/{connection_id}/deduction/{id}`
- Auth: API key in header `authorization`

## Path parameters

- `connection_id` string, required
- `id` string, required

## Query parameters

- `fields` string[]
- `raw` string

## Request body

- HrisDeduction: Employee-specific deduction/benefit enrolment.
  - `id` string
  - `created_at` string, date-time: (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
  - `updated_at` string, date-time: (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
  - `user_id` string: employee ID (reference to HrisEmployee)
  - `company_id` string: (reference to HrisCompany)
  - `benefit_id` string
  - `amount` number: percentage or absolute amount (employee's portion)
  - `type` 'FIXED' | 'PERCENTAGE'
  - `coverage_level` 'EMPLOYEE_ONLY' | 'EMPLOYEE_SPOUSE' | 'EMPLOYEE_CHILD' | 'EMPLOYEE_CHILDREN' | 'EMPLOYEE_FAMILY' | 'FAMILY' | 'OTHER': Level selected by employee (e.g. "FAMILY", "EMPLOYEE_ONLY", or other)
  - `frequency` 'ONE_TIME' | 'DAY' | 'QUARTER' | 'YEAR' | 'HOUR' | 'MONTH' | 'WEEK' | 'BIWEEKLY' | 'SEMIMONTHLY': Frequency for this deduction (should always be set, matches IHrisBenefit.frequency)
  - `start_at` string, date-time: (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
  - `end_at` string, date-time: (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
  - `is_active` boolean
  - `notes` string
  - `employer_amount` number: percentage or absolute amount (employer's portion/match)
  - `employer_type` 'PERCENTAGE' | 'FIXED'
  - `max_amount` number: annual maximum employee amount (always money)
  - `paycode_id` string: the hris_paycode (deduction code) this deduction uses
  - `garnishment_type` 'CHILD_SUPPORT' | 'TAX_LEVY' | 'STUDENT_LOAN' | 'CREDITOR' | 'BANKRUPTCY' | 'OTHER': set when this deduction is a court-ordered garnishment
  - `metadata` HrisMetadata[]
    - `id` string
    - `value` unknown
    - `namespace` string
    - `format` 'TEXT' | 'NUMBER' | 'DATE' | 'BOOLEAN' | 'FILE' | 'TEXTAREA' | 'SINGLE_SELECT' | 'MULTIPLE_SELECT' | 'MEASUREMENT' | 'PRICE' | 'YES_NO' | 'CURRENCY' | 'URL'
    - `extra_data` unknown
    - `slug` string
  - `raw` unknown

## Response `200`

Successful

- HrisDeduction: Employee-specific deduction/benefit enrolment.
  - `id` string
  - `created_at` string, date-time: (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
  - `updated_at` string, date-time: (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
  - `user_id` string: employee ID (reference to HrisEmployee)
  - `company_id` string: (reference to HrisCompany)
  - `benefit_id` string
  - `amount` number: percentage or absolute amount (employee's portion)
  - `type` 'FIXED' | 'PERCENTAGE'
  - `coverage_level` 'EMPLOYEE_ONLY' | 'EMPLOYEE_SPOUSE' | 'EMPLOYEE_CHILD' | 'EMPLOYEE_CHILDREN' | 'EMPLOYEE_FAMILY' | 'FAMILY' | 'OTHER': Level selected by employee (e.g. "FAMILY", "EMPLOYEE_ONLY", or other)
  - `frequency` 'ONE_TIME' | 'DAY' | 'QUARTER' | 'YEAR' | 'HOUR' | 'MONTH' | 'WEEK' | 'BIWEEKLY' | 'SEMIMONTHLY': Frequency for this deduction (should always be set, matches IHrisBenefit.frequency)
  - `start_at` string, date-time: (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
  - `end_at` string, date-time: (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
  - `is_active` boolean
  - `notes` string
  - `employer_amount` number: percentage or absolute amount (employer's portion/match)
  - `employer_type` 'PERCENTAGE' | 'FIXED'
  - `max_amount` number: annual maximum employee amount (always money)
  - `paycode_id` string: the hris_paycode (deduction code) this deduction uses
  - `garnishment_type` 'CHILD_SUPPORT' | 'TAX_LEVY' | 'STUDENT_LOAN' | 'CREDITOR' | 'BANKRUPTCY' | 'OTHER': set when this deduction is a court-ordered garnishment
  - `metadata` HrisMetadata[]
    - `id` string
    - `value` unknown
    - `namespace` string
    - `format` 'TEXT' | 'NUMBER' | 'DATE' | 'BOOLEAN' | 'FILE' | 'TEXTAREA' | 'SINGLE_SELECT' | 'MULTIPLE_SELECT' | 'MEASUREMENT' | 'PRICE' | 'YES_NO' | 'CURRENCY' | 'URL'
    - `extra_data` unknown
    - `slug` string
  - `raw` unknown

---

[API](https://skmtc.dev/unified/apis/unified-to-api-2.md) · [All operations](https://skmtc.dev/unified/apis/unified-to-api-2/llms.txt) · [OpenAPI document](https://skmtc.dev/unified/apis/unified-to-api-2/revisions/7a38bdd7f089?raw)
