Saltar al contenido principal
POST

Solicitar una ausencia

Scope:team:time-off.write
https://api.holded.com/api/v2/employees/{employeeId}/time-offs

Crea una nueva solicitud de ausencia, vacación o permiso para el empleado indicado.

Parámetros

Parámetros de ruta

employeeIdstringobligatorio

ID del empleado (ObjectId hexadecimal de 24 caracteres)

Cuerpo de la petición

object
time_off_type_idstringrequired

Tipo de ausencia (p. ej. vacaciones, baja, permiso)

start_datestring<date>required

Fecha de inicio de la ausencia (ATOM, ISO 8601 con zona horaria)

end_datestring<date>required

Fecha de fin de la ausencia (ATOM, ISO 8601 con zona horaria)

start_periodstring | nulloptional

Granularidad de medio día: morning, afternoon, full_day u hourly

Enum:morningafternoonfull_dayhourly
reasonstring | nulloptional

Motivo u observaciones opcionales

start_hourstring | nulloptional

Hora de inicio para tipos con granularidad horaria (HH:MM)

num_hoursnumber | nulloptional

Duración en horas. Múltiplo de 0.5

Petición

python
import requests

url = "https://api.holded.com/api/v2/employees/507f1f77bcf86cd799439012/time-offs"
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Accept": "application/json",
}

payload = {
    "time_off_type_id": "507f1f77bcf86cd799439013",
    "start_date": "2026-06-01",
    "end_date": "2026-06-05",
    "start_period": "morning",
    "reason": "string",
    "start_hour": "09:00",
    "num_hours": 4
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())

Respuestas

Respuesta

json
{
  "id": "507f1f77bcf86cd799439011"
}

Respuestas exitosas

201Ausencia creadaapplication/json
object
idstring

Respuestas de error

400Solicitud incorrectaapplication/json
401API key inválida o no proporcionadaapplication/json
403Permisos insuficientesapplication/json
404Empleado no encontradoapplication/json
422Datos de ausencia no válidosapplication/json
429Límite de solicitudes excedidoapplication/json