schedule.setRules
Change the shop's scheduling rules (owner or office; the time zone is owner only). arrival_window_minutes is the default window customers are told for new visits (0 means an exact time). buffer_minutes is travel and setup time find-a-time keeps clear around booked visits. reminder_hours is how long before a visit the customer gets an appointment reminder email (0 turns reminders off). on_my_way_notices emails the customer when a worker taps on the way. Only the fields you send change. Visits already booked keep their window and reminder.
| Who | Agents can call this |
| REST | POST /v1/schedule/rules |
| MCP tool | schedule_setRules |
| Writes | yes, send an Idempotency-Key |
| Area | Scheduling and visits |
When to use it
Read schedule.settings first: it has the shop's time zone, working hours, arrival window and buffer. Use schedule.findTime to get open times that fit the shop's hours, each worker's hours and time off, and visits already booked with the buffer around them, then book with visits.create.
What to tell the owner
Say what you did in plain words and what happens next.
Input
| Field | Type | Required |
|---|---|---|
shop_id | string (uuid) | yes |
arrival_window_minutes | integer | no |
buffer_minutes | integer | no |
reminder_hours | integer | no |
on_my_way_notices | boolean | no |
time_zone | string | no |
Example
POST https://doingwork.work/v1/schedule/rules
content-type: application/json
Idempotency-Key: 3f1c...
{
"shop_id": "00000000-0000-4000-8000-000000000000"
}Output
JSON. The response shape isn't published yet; read the fields you need and ignore the rest. Errors are {code, message, status}.
Errors
| Code | Status | What to do |
|---|---|---|
invalid_input, invalid_token, rate_limited | Can happen on any call. See errors. |