---
title: "Add Time Offs"
method: POST
path: "/api/v1/timeoffs"
tags: ["TimeOffs"]
---

# Add Time Offs

`POST /api/v1/timeoffs`

## Request

- Base URL: `https://api-sxkan78ybekjjaveh1lcig.teamhood.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api-sxkan78ybekjjaveh1lcig.teamhood.com/api/v1/timeoffs`
- Auth: API key in header `X-ApiKey`
- TypeScript: <https://skmtc.dev/teamhood/apis/teamhood-api-v1/docs/api/v1/timeoffs/post.ts> (a function with typed inputs; its response is checked against the schema)

Adds up to 1000 time offs in a single transaction: if any entry is invalid, none are added.
`user` is the id of an active or invited member (see `type` and `status` in List all Users); guests and disabled users are rejected.
"All" adds a company-wide time off.
`finish` is the last day off and must be within 5 years from today.
A time off must not share a day with one the user already has, or with another entry for the same user in the request.
Company-wide time offs only conflict with each other. Requires a tenant API key.

## Request body

- ExternalAPIContractsRequestsV1AddTimeOffRequest[]
  - `user` string, nullable, required: User id, or "All" for a company-wide time off
  - `title` string, nullable, required
  - `start` string, date, required
  - `finish` string, date, required: Last day of the time off (inclusive)

## Response `200`

OK

- ExternalAPIContractsResponsesV1AddTimeOffsResponse
  - `timeOffs` ExternalAPIContractsResponsesV1EntitiesTimeOff[], nullable, required
    - `id` string, uuid, required
    - `title` string, nullable, required
    - `start` string, date, required
    - `finish` string, date, required
    - `isAllCompany` boolean, required
    - `userIds` string[], nullable, required

## Other responses

- `400`: An entry is invalid; the message is prefixed with its zero-based index, e.g. "[3]: ".
- `403`: The API key is not a tenant API key.

## Changes

> 11 revisions in range; 1 not diffed.

- **2026-10-02** `6bff7199cae6`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/teamhood/apis/teamhood-api-v1/changes/api/v1/timeoffs/post.md)

---

[API](https://skmtc.dev/teamhood/apis/teamhood-api-v1.md) - [All operations](https://skmtc.dev/teamhood/apis/teamhood-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/teamhood/apis/teamhood-api-v1/revisions/dda58248b310?raw)
