Vexar API

Schedule & Settings

The booking schedule (шахматка) is attached to your AI business card profile. Define a weekly schedule, exceptions (days off / special hours), and booking rules. All endpoints require authentication and operate on the profile of the authenticated account.

GET /api/v1/my-profile/schedule Auth

Get the weekly schedule and booking settings.

Response
{
  "success": true,
  "schedule": [
    { "day_of_week": 1, "start_time": "09:00", "end_time": "18:00", "is_available": true }
  ],
  "settings": { "slot_duration": 60, "buffer_time": 15, "auto_confirm": false, … }
}
PUT /api/v1/my-profile/schedule Auth

Replace the weekly schedule. day_of_week: 0=Sunday … 6=Saturday.

Request body
{
  "days": [
    { "day_of_week": 1, "start_time": "09:00", "end_time": "18:00", "is_available": true },
    { "day_of_week": 2, "start_time": "09:00", "end_time": "18:00", "is_available": true }
  ]
}
Response
{ "success": true }
PUT /api/v1/my-profile/booking-settings Auth

Update booking rules. Send any subset of the fields below.

Request body
{
  "slot_duration": 60,
  "buffer_time": 15,
  "max_bookings_per_day": 8,
  "min_notice_hours": 24,
  "max_advance_days": 30,
  "cancellation_hours": 24,
  "auto_confirm": false,
  "require_payment": false,
  "confirmation_message": "See you soon!"
}
Response
{ "success": true }
GET /api/v1/my-profile/schedule/overrides Auth

List schedule exceptions. Optional from/to date filters.

Response
{
  "success": true,
  "overrides": [
    { "id": 5, "override_date": "2026-07-01", "is_available": false, "reason": "Holiday" }
  ]
}
POST /api/v1/my-profile/schedule/overrides Auth

Add an exception — a day off (is_available: false) or special hours. Past dates are rejected.

Request body
{
  "override_date": "2026-07-01",
  "is_available": false,
  "reason": "Holiday"
}
Response
{ "success": true, "id": 5 }
DELETE /api/v1/my-profile/schedule/overrides/{id} Auth

Remove a schedule exception.

Response
{ "success": true }

Settings fields

ParamTypeDescription
slot_durationintSlot length in minutes (default 60)
buffer_timeintBuffer between bookings, minutes (default 15)
max_bookings_per_dayintMax bookings per day (default 8)
min_notice_hoursintMinimum notice before a slot, hours (default 24)
max_advance_daysintHow far ahead bookings are allowed, days (default 30)
cancellation_hoursintCancellation cut-off, hours (default 24)
auto_confirmboolAuto-confirm new bookings (default false)
require_paymentboolRequire payment to book (default false)
confirmation_messagetextMessage shown after a successful booking
staff_selection_modeenumhidden | optional | required | auto (see Staff)