start_service_request
Start a service request
Start a new supported service request immediately with the user's full intent and known public facts. Returns the vertical introduction and next intake/matching step, including availability when intake is complete; no separate lookup is needed. Use provider_hint only for an explicitly named company.
輸入參數answersuser_intent必填provider_hintvertical_hintidempotency_key必填
update_service_request
Update a service request
Submit supplied answers and any chosen selected_time_key with the latest expected_state_version. Omitted optional/conditional fields do not block progress. Returns the updated next_action and current availability; continue directly without get_service_options. choose_service_provider means ask for a company before opening its protected contact card.
輸入參數answersrequest_id必填idempotency_key必填expected_state_version必填explicitly_unknown_field_ids
get_service_options
Get current service options
Refresh availability only when needed, such as when the user asks to check again. start_service_request and update_service_request already return current matching data. Returns aggregated windows and refinement fields without selecting a company or reserving capacity.
輸入參數request_id必填
render_service_request_form
Open the final service confirmation card
Open the protected contact/terms/Confirm card only after company choice. Pass the explicitly chosen company's option_key from current service_options; omit it only for a single option or a previously selected company. First give at most one short introductory sentence, then call this tool as the last action and end the reply. Do not write anything after the card: it owns all subsequent instructions, progress and receipt.
輸入參數option_keyrequest_id必填
select_service_option
Select a company in the final card
Use only from the final protected card when the user selects one exact provider option. It rechecks availability, releases any previous selection, creates one temporary hold for the selected company, and returns its protected booking schema. It does not create a booking.
輸入參數option_key必填request_id必填idempotency_key必填expected_state_version必填
create_service_booking
Create the confirmed service booking
Use only from the protected final card with its one-time authorization after the user presses Confirm. Provider, request, hold, time and protected answers come from server context; do not pass or reconstruct them. This anonymous action completes the booking and must not trigger Connect or phone verification. Safe retries must reuse the same idempotency key.
輸入參數source必填campaign_idcorrelation_id必填idempotency_key必填anonymous_session_id必填booking_authorization_token必填
complete_account_link
Finish saving booking details
Compatibility-only completion for an explicitly initiated legacy profile-link session. Never call it as part of a new booking and never ask for an SMS code in chat. Viewing or managing an existing appointment starts Connect through the corresponding booking-management tool.
輸入參數linking_session_id必填
list_my_service_bookings
List my appointments
Use immediately when the user asks to see or manage appointments. For cancellation or rescheduling, pass status='active'. Active means a confirmed or rescheduled appointment whose arrival window has not ended; past or terminal bookings are never active. If multiple active appointments are returned, show the choices instead of guessing. Connect is handled by the platform; never ask for a phone or code in chat.
輸入參數limitstatus
get_my_service_booking
Open one of my appointments
Open an appointment that belongs to the connected customer. This is read-only. Historical appointments have no management actions. Give at most one short introductory sentence before calling this tool as the last action, then end the reply: no summary, status, details or instructions after the card. The live card owns viewing, exact change review and completion.
輸入參數intentbooking_id必填
prepare_service_booking_change
Review an exact appointment change
Use this only from the protected management form after secure appointment access. It prepares the exact reschedule or cancellation review but does not change the booking. A reschedule accepts only a live slot returned inside the protected form and temporarily reserves that capacity. The user must separately confirm the exact preview before a write tool can run.
輸入參數action必填booking_idnew_slot_ididempotency_key必填management_context_token
reschedule_service_booking
Reschedule an approved appointment
Use this only with the one-time approval issued after the user confirms the exact reschedule inside the protected management form. It moves the existing booking to the reserved available time, preserves its prior-time history, frees the old capacity, and sends transactional notifications. Safe retries must reuse the same idempotency key.
輸入參數source必填correlation_id必填idempotency_key必填anonymous_session_id必填booking_change_authorization_token必填
cancel_service_booking
Cancel an approved appointment
Use this only with the one-time approval issued after the user confirms the exact cancellation inside the protected management form. It cancels only the authorized active booking, frees its capacity, and sends transactional notifications. Safe retries must reuse the same idempotency key.
輸入參數source必填correlation_id必填idempotency_key必填anonymous_session_id必填booking_change_authorization_token必填