Partially updates a service with a merge-patch body. type is immutable; for package services, package.components replaces the full component list when present. Team Member links are written through updateTeamMemberServices, not here.
- Mock serverhttps://developer.alteg.io/_mock/en/b2b-v3/openapi/locations/{location_id}/services/{service_id}
- Preview resource API contract - endpoint surface is not live yethttps://api.alteg.io/api/v3/locations/{location_id}/services/{service_id}
curl -i -X PATCH \
'https://developer.alteg.io/_mock/en/b2b-v3/openapi/locations/{location_id}/services/{service_id}' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/merge-patch+json' \
-d '{
"price_min_minor": 280000
}'The updated service.
Requests left in the most constrained policy window that applies to this request.
On 429, seconds until the most constrained policy frees up; it equals Retry-After there. On a successful response it reports the length of that policy's window rather than the time left in the current one, so treat it as the window size, not as a countdown — the counter to pace against is RateLimit-Remaining.
Most constrained policy applied to the request, as <limit>;w=<window in seconds>.
Service kind. Immutable after creation (422 field_immutable). A package service bundles several simple services of the same Location; it appears in the same list and is scheduled by the same service_id.
Internal name shown to the business in Altegio, as the business entered it; not translated.
Client-facing name shown in online booking, as the business entered it; equals name when no separate online booking name is set. Not translated.
Service category (listServiceCategories); null when the category is not listed in this Location.
Default duration of the service in seconds (the Location-wide default, 3600 when none is set).
Display order the business set in Altegio (higher first). Lists are ordered by id; sort by weight on the client.
Base price of the service in this Location, integer minor units of the Location currency, as set by the business: a single price or the lower bound of a range. For a package, the package price stored in Altegio. Team Member prices by grade can differ.
Upper bound of the base price range, integer minor units of the Location currency; equals price_min_minor for a single price; null for a legacy "from" price without an upper bound.
The business's online booking setting for this service in the Location. It does not mean that free time is available; free slots come from the availability operations.
Team Members providing this service, by id. Read-only here; links are written through updateTeamMemberServices.
Package settings and components of a service with type: package.
{ "id": 100, "object": "service", "type": "simple", "name": "Men's haircut", "online_booking_name": "Haircut for men", "category_id": 205, "duration_seconds": 3600, "weight": 2, "currency": "EUR", "online_booking_enabled": true, "team_members": [ { … }, { … } ], "package": null, "created_at": "2026-07-01T08:00:00Z", "price_min_minor": 250000, "price_max_minor": 300000 }