Naar navigatie springen

Update Service

Update an existing service. Only the fields sent are changed.

Padparameters

service_idstringVerplicht

Headers

xi-api-keystringOptioneel
xi-workspace-idstring or nullOptioneel
The customer workspace a reseller's API key acts on.

Verzoek

This endpoint expects an object.
pricing_modeenumOptioneelStandaard fixed

‘fixed’ (default): the item has a known price the agent can quote, and customers can book or order it directly. ‘quote’: the price depends on the job (renovation, catering, custom work), so no price or slot is offered; the agent collects the intake_questions and files a quote request instead. Takes effect only while quotes are enabled for the business. Group services cannot use ‘quote’.

Toegestane waarden:
intake_questionslist of objectsOptioneel

Questions the agent asks before booking or ordering this item. Required for a useful pricing_mode='quote' item — without them a quote request arrives with nothing to price — but also valid on fixed-price items that need extra detail (current hair color before a dye job, allergies before a treatment).

groupslist of objectsOptioneel

Group memberships for this item. Each entry carries the group label and the item’s 0-based rank within that group.

ungrouped_rankinteger or nullOptioneel

Display position among items with no group; null sorts last. Change it with the reorder endpoint.

namestringOptioneel
descriptionstringOptioneel
variantslist of objectsOptioneel

Bookable options for this service. Always non-empty; variants[0] is the default option shown when callers don’t pick a specific variant. Each entry has its own duration and (optional) price, and uniqueness is keyed by duration.

kindenumOptioneelStandaard classic

Classic = staff-delivered; rental = asset-based; group = multi-participant session.

Toegestane waarden:
buffer_minutesintegerOptioneel

Turnover/cleanup time reserved after each booking. Applies to every service kind; default 0 means no buffer.

service_locationenumOptioneelStandaard business

Where the service is delivered. business = client visits the business location (default); customer = staff travels to the client. Only meaningful for kind='classic'.

Toegestane waarden:
add_onslist of objectsOptioneel
Optional extras that can be added to a booking of this service.
max_participantsinteger or nullOptioneel2-200

Capacity for kind='group': how many seats a single session can sell across all registrations. Must be null for classic and rental services (those are always exclusive to one client per booking).

capacityinteger or nullOptioneel
is_activebooleanOptioneel
any_staff_memberbooleanOptioneel
staff_idslist of stringsOptioneel

Staff assigned to this service; must be empty for kind=‘rental’.

asset_idslist of stringsOptioneel
advance_booking_minutesintegerOptioneel

How far into the future customer-facing channels (public booking page, voice agent) may book this service. Applies to every kind.

location_idslist of stringsOptioneel

Locations where this service is offered; empty list means all locations.

display_on_booking_pagebooleanOptioneel
travel_minutesintegerOptioneel

Travel time in minutes added before/after appointments for customer-location services. Blocks the staff member’s calendar but is not visible to the customer. Ignored when service_location='business'.

travel_beforebooleanOptioneel

Add travel time before the appointment (outbound trip).

travel_afterbooleanOptioneel

Add travel time after the appointment (return trip).

promotionslist of objectsOptioneel

Time-bound discounts applicable to this service or specific variants.

duration_minutesinteger or nullOptioneel<=43200

Sets the first variant’s duration. Ignored when variants is sent.

pricedouble or nullOptioneel>=0

Sets the first variant’s price. Ignored when variants is sent.

Response

Geslaagde response
has_affected_eventsboolean
serviceobject or nullOptioneel

Represents a bookable service (e.g., haircut, massage, consultation).

Fouten

422
Unprocessable Entity Error