---
title: "Creates a new change request for work times."
method: POST
path: "/v2/workTimes/changeRequests"
tags: ["WorkTime"]
---

# Creates a new change request for work times.

`POST /v2/workTimes/changeRequests`

There can only be one pending change request per user and day.
By creating another change request for a day which already has a pending one,
the existing change request will be overwritten.
If a change request is submitted for a day on which the user is allowed to edit work times without a change request,
the changes are approved automatically and applied to the day's work times.

## Request body

- object
  - `date` string, date, required
  - `users_id` integer, required
  - `changes` object[], required
    - `time_since` string, date-time
    - `time_until` string, date-time
    - `type` 1 | 2 — Possible values: - `1`: Added - `2`: Removed

## Response `200`

Successful operation

- WorkTimesChangeRequestPostV2
  - `change_request` WorkTimesChangeRequestV2, required
    - `id` integer, required
    - `date` string, date, required
    - `users_id` integer, required
    - `status` 1 | 2, required — Possible values: - `1`: Requested - `2`: Declined
    - `created_at` string, date-time, required
    - `declined_at` string, date-time, nullable, required
    - `declined_by` integer, nullable, required
    - `changes` WorkTimesChangeRequestChangeV2[], required
      - `type` 1 | 2, required — Possible values: - `1`: Added - `2`: Removed
      - `time_since` string, date-time, required
      - `time_until` string, date-time, required
  - `replaced_change_request` WorkTimesChangeRequestV2, required
    - `id` integer, required
    - `date` string, date, required
    - `users_id` integer, required
    - `status` 1 | 2, required — Possible values: - `1`: Requested - `2`: Declined
    - `created_at` string, date-time, required
    - `declined_at` string, date-time, nullable, required
    - `declined_by` integer, nullable, required
    - `changes` WorkTimesChangeRequestChangeV2[], required
      - `type` 1 | 2, required — Possible values: - `1`: Added - `2`: Removed
      - `time_since` string, date-time, required
      - `time_until` string, date-time, required
  - `approved_immediately` boolean, required

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `409` — Conflict

---

[API](https://skmtc.net/clockodo/apis/clockodo-api-documentation.md) · [All operations](https://skmtc.net/clockodo/apis/clockodo-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/clockodo/clockodo-api-documentation/versions/0f27ed36400c/schema)
