visits.notices
Customer notices planned or handled for a visit (appointment reminder, on my way), with status pending, queued (handed to email), cancelled or skipped and why. Owner or office.
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
Tell them what you found in plain words. Don't read back raw fields.
| Field | Type | Required |
|---|
visit_id | string (uuid) | yes |
Example
GET https://doingwork.work/v1/visits/notices?visit_id=00000000-0000-4000-8000-000000000000
Output
| Field | Type | Always there |
|---|
visit_id | string (uuid) | yes |
items | array | yes |
items[].notice_id | string (uuid) | no |
items[].kind | string (one of appointment_reminder, on_my_way) | no |
items[].due_at | string (date-time) | no |
items[].status | string (one of pending, queued, cancelled, skipped) | no |
items[].outcome | ['string', 'null'] | no |
items[].customer_email_id | ['string', 'null', ' ', '(', 'u', 'u', 'i', 'd', ')'] | no |
items[].finished_at | ['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')'] | no |
{
"visit_id": "00000000-0000-4000-8000-000000000000",
"items": [
{
"notice_id": "00000000-0000-4000-8000-000000000000",
"kind": "appointment_reminder",
"due_at": "...",
"status": "pending",
"outcome": "...",
"customer_email_id": "00000000-0000-4000-8000-000000000000",
"finished_at": "..."
}
]
}
Errors
| Code | Status | What to do |
|---|
invalid_input, invalid_token, rate_limited | | Can happen on any call. See errors. |