Skip to content

Установить перерывы текущего пользователя на указанную дату

Request

Сохраняет список пользовательских перерывов на указанную дату.

Перед сохранением интервалы сортируются по start_time, а затем полностью перезаписывают уже сохранённые перерывы на эту дату. Если передан пустой список intervals, перерывы на дату очищаются. Если хотя бы одна существующая запись со статусом BOOKED пересекается с любым интервалом из нового списка, возвращается конфликт 409.

Правила валидации:

  • date обязателен и не должен быть раньше текущего дня
  • intervals обязателен, но может быть пустым
  • каждый элемент intervals должен быть не null
  • внутри каждого интервала start_time и end_time обязательны
  • end_time должен быть позже start_time в рамках одного дня
  • минимальная длительность одного перерыва: 15 минут
  • интервалы перерывов не должны пересекаться между собой

Доступ:

  • только роли MASTER или SALON
  • требуется JWT
Security
bearerAuth or jwtCookie
Bodyapplication/jsonrequired
datestring, (date)required

Дата, на которую устанавливаются или читаются перерывы.

Example:"2026-04-01"
intervalsArray of objects(BreakTimeInterval)required

Список перерывов на дату. При сохранении сортируется по времени начала. Может быть пустым, чтобы очистить перерывы на дату.

curl -i -X POST \
  https://felmee.com/api/calendar/break \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "date": "2026-04-01",
    "intervals": [
      {
        "start_time": "14:00",
        "end_time": "15:00"
      },
      {
        "start_time": "10:00",
        "end_time": "11:00"
      }
    ]
  }'

Responses

Перерывы на дату успешно сохранены

Bodyapplication/json
codeErrorstring or nullrequired

Устаревший camelCase-alias поля error_code; при ошибке оба поля содержат одинаковое значение.

successbooleanrequired

Флаг успешного выполнения запроса

messagestringrequired

Человекочитаемое описание результата

error_codestring or null(ERROR_CODE)required

Код ошибки. Для успешных ответов всегда null.

Enum:"invalid_body""unauthorized""not_found""conflict""object_modified_by_another_thread""action_too_late""too_many_request""code_is_gone""forbidden""user_blocked"
dataobject or null(SetBreaksData)required

Полезная нагрузка. Может быть объектом, массивом или null.

Response
{ "success": true, "message": "Breaks updated successfully", "codeError": null, "error_code": null, "data": { "breaks": {} } }