Update an appointmentComing soon
Changes the title, your private notes or the directions. It notifies nobody.
Coming soon. Changes the title, your private notes or the directions. It notifies nobody.
Scopes: calendar:write
Pricing: Included with the connection.
AuthorizationBearer <matchai_<base62>>A personal API key, sent as Authorization: Bearer matchai_…. Create keys in Matchai under Settings → Connectors → Advanced (for developers). A key starts with matchai_ followed by letters and digits, carries the scopes chosen when it was created, and can be revoked at any time. Keys reach only the account that created them: to serve other professionals, use Connect with Matchai.
Scope: calendar:write
appointment_id*stringAppointment id.
1 <= length <= 64application/json- body
Changes that notify nobody. To move the time, use reschedule.
1 <= propertiestitle?|Title.
length <= 200internal_notes?|Notes only you see.
length <= 4000location_note?|Directions.
length <= 500The appointment.
application/json- response
id*stringAppointment id.
1 <= length <= 64title?|Title. When null, Matchai shows one built from the type and the listing.
type*AppointmentType"property_viewing""open_house""virtual_tour""walkthrough""client_consultation""client_followup""offer_review""negotiation_meeting""contract_review""contract_signing""contract_amendment""closing_meeting""key_exchange""inspection""environmental_inspection""move_in_inspection""move_out_inspection""appraisal""work_estimation""surveying""title_search""mortgage_meeting""insurance_consultation""legal_consultation""escrow_meeting""marketing_photoshoot""staging_consultation""renovation_consultation""relocation_consultation""zoning_consultation""architectural_review""construction_update""developer_meeting""hoa_meeting""property_management_meeting""tenant_screening""utility_setup""status_update""team_meeting"status*AppointmentStatusrequested: waiting for the host’s answer. confirmed: booked. reschedule_pending: a new time was proposed and waits for an answer.
"requested""confirmed""reschedule_pending""completed""cancelled""declined""no_show"starts_at*stringStart, with the UTC offset of timezone.
date-timeends_at*stringEnd.
date-timeduration_minutes*integerLength.
5 <= value <= 480timezone*stringIANA time zone of the appointment.
location*host*participants*array<>Everyone invited except the host.
listing_ids*array<>Listings it is about.
project_id?|Project it belongs to.
1 <= length <= 64conversation_id?|Conversation it was arranged in.
1 <= length <= 64notes?|Notes every participant sees.
internal_notes?|Notes only you see.
source*string"listing""direct""project""assistant""api"proposed_starts_at?|For reschedule_pending: the proposed new start.
date-timerequested_at?|When it was requested.
date-timecreated_at*stringCreated.
date-timeupdated_at*stringLast changed.
date-timecurl -X PATCH 'https://api.matchai.co/v1/appointments/string' \ -H 'Content-Type: application/json' \ -d '{}'{ "id": "string", "title": "string", "type": "property_viewing", "status": "requested", "starts_at": "2019-08-24T14:15:22Z", "ends_at": "2019-08-24T14:15:22Z", "duration_minutes": 5, "timezone": "string", "location": { "type": "in_person", "address": { "formatted": "string", "street": "string", "unit": "string", "city": "string", "region": "string", "postal_code": "string", "country": "string" }, "url": "http://example.com", "phone": "string", "note": "string" }, "host": { "user_id": "string", "display_name": "string", "team_id": "string" }, "participants": [ { "user_id": "string", "contact_id": "string", "display_name": "string", "role": "attendee", "status": "pending" } ], "listing_ids": [ "string" ], "project_id": "string", "conversation_id": "string", "notes": "string", "internal_notes": "string", "source": "listing", "proposed_starts_at": "2019-08-24T14:15:22Z", "requested_at": "2019-08-24T14:15:22Z", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z"}