{"ok":true,"site":{"host":"dollea.de","url":"https://www.dollea.de/","type":"live","desc":"Beauty Studio Dollea","tools":[{"name":"dollea_get_profile","kind":"act","impl":"imperative","description":"Genau das durch die aktuellen Zugangsdaten verbundene Konto erkennen. Die beständige Kennung bleibt bei Änderungen an E-Mail, Namen oder Zugangsdaten erhalten.","title":"Verbundenes Konto erkennen","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/leistungen/manikuere-muenchen/","/leistungen/pedikuere/"]},{"name":"salon_find_slots","kind":"act","impl":"imperative","description":"Tatsächlich freie Termine für ausgewählte Salonleistungen finden. Mitarbeiterzuordnung, kombinierte Behandlungen und Buchungsfristen werden berücksichtigt. Eine Mitarbeiterpräferenz wird nicht stillschweigend ersetzt.","title":"Freie Salontermine finden","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"service_ids":{"type":"array","items":{"type":"integer","minimum":1,"description":"Optionaler ausdrücklich gewünschter Mitarbeiter. Eine ungeeignete oder nicht verfügbare Präferenz wird nicht ersetzt."},"minItems":1,"maxItems":12,"uniqueItems":true,"description":"Aktuelle numerische Leistungskennungen aus salon_search_services. Mehrere Leistungen werden als zusammenhängender Besuch geprüft."},"from_date":{"type":"string","format":"date","description":"Letzter lokaler Kalendertag des begrenzten Suchzeitraums, einschließlich dieses Tages."},"to_date":{"type":"string","format":"date","description":"Letzter lokaler Kalendertag des begrenzten Suchzeitraums, einschließlich dieses Tages."},"staff_id":{"type":"integer","minimum":1,"description":"Optionaler ausdrücklich gewünschter Mitarbeiter. Eine ungeeignete oder nicht verfügbare Präferenz wird nicht ersetzt."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Gewünschte Sprache für Texte und Anzeigeformate: de, en oder ru."},"limit":{"type":"integer","minimum":1,"maximum":200,"default":100,"description":"Maximale Anzahl zurückgegebener Ergebnisse innerhalb der veröffentlichten Grenze."},"offset":{"type":"integer","minimum":0,"maximum":10000,"default":0,"description":"Ergebnisposition für die nächste Seite; next_offset aus der vorherigen Antwort verwenden."}},"required":["service_ids","from_date"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/leistungen/manikuere-muenchen/","/leistungen/pedikuere/"]},{"name":"salon_get_booking","kind":"transact","impl":"imperative","description":"Mit dem privaten Buchungsschlüssel Terminablauf und Anfrageentscheidungen lesen. Kontaktdaten und Anamnese werden nicht ausgegeben.","title":"Eigenen Salontermin lesen","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"booking_token":{"type":"string","minLength":16,"maxLength":128,"description":"Privater Schlüssel des eigenen Salontermins aus der Buchungsbestätigung. Er berechtigt nicht zum Zugriff auf andere Termine."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Gewünschte Sprache für Texte und Anzeigeformate: de, en oder ru."}},"required":["booking_token"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/leistungen/manikuere-muenchen/","/leistungen/pedikuere/"]},{"name":"salon_get_campaign","kind":"act","impl":"imperative","description":"Die aktuell im Hero veröffentlichte Salonaktion einschließlich Code, Kundenkreis und Gültigkeit abrufen. Ein angezeigter Code bestätigt noch keine persönliche Rabattberechtigung.","title":"Aktuelle Salonaktion abrufen","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Gewünschte Sprache für Texte und Anzeigeformate: de, en oder ru."}},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/leistungen/manikuere-muenchen/","/leistungen/pedikuere/"]},{"name":"salon_get_price","kind":"answer","impl":"imperative","description":"Den aktuellen Preis für einen konkreten Salontermin berechnen. Für einen Promocode werden echte E-Mail-Adresse und Telefonnummer benötigt. Die Prüfung reserviert keinen Termin und verbraucht keine Einlösung.","title":"Salonpreis prüfen","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"service_ids":{"type":"array","items":{"type":"integer","minimum":1,"description":"Optionaler ausdrücklich gewünschter Mitarbeiter. Eine ungeeignete oder nicht verfügbare Präferenz wird nicht ersetzt."},"minItems":1,"maxItems":12,"uniqueItems":true,"description":"Aktuelle numerische Leistungskennungen aus salon_search_services. Mehrere Leistungen werden als zusammenhängender Besuch geprüft."},"start_at":{"type":"string","format":"date-time","description":"Konkreter Terminbeginn als ISO-Datum mit Zeitzonenoffset. Relative Zeiten zuerst anhand der mitgelieferten Münchner Ortszeit auflösen."},"staff_id":{"type":"integer","minimum":1,"description":"Optionaler ausdrücklich gewünschter Mitarbeiter. Eine ungeeignete oder nicht verfügbare Präferenz wird nicht ersetzt."},"customer":{"type":"object","properties":{"first_name":{"type":"string","minLength":1,"maxLength":100},"last_name":{"type":"string","minLength":1,"maxLength":100},"email":{"type":"string","format":"email","maxLength":254},"phone":{"type":"string","minLength":6,"maxLength":50}},"required":["email","phone"],"additionalProperties":false,"description":"Vom Kunden bereitgestellte Kontaktdaten. Für eine persönliche Aktionsprüfung müssen E-Mail und Telefonnummer vorhanden sein."},"promo_code":{"type":"string","maxLength":64,"description":"Vom Kunden gewünschter oder aktuell veröffentlichter Promocode. Seine Berechtigung wird serverseitig geprüft."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Gewünschte Sprache für Texte und Anzeigeformate: de, en oder ru."}},"required":["service_ids","start_at"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/leistungen/manikuere-muenchen/","/leistungen/pedikuere/"]},{"name":"salon_get_quote","kind":"act","impl":"imperative","description":"Ein eigenes Salonangebot mit Kennung und Zugriffsschlüssel lesen. Aktuelle Änderungen werden als erneute Angebotsprüfung gekennzeichnet. Keine fremden Kontaktdaten werden offengelegt.","title":"Salonangebot prüfen","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"quote_id":{"type":"string","format":"uuid","description":"Kennung des zuvor vom Server vorbereiteten Buchungsangebots."},"quote_token":{"type":"string","minLength":32,"maxLength":128,"description":"Nur beim Erstellen ausgegebener Zugriffsschlüssel des Angebots. Nicht veröffentlichen oder aus fremden Daten ableiten."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Gewünschte Sprache für Texte und Anzeigeformate: de, en oder ru."}},"required":["quote_id","quote_token"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/leistungen/manikuere-muenchen/","/leistungen/pedikuere/"]},{"name":"salon_search_services","kind":"act","impl":"imperative","description":"Aktuelle Salonleistungen in München nach Behandlung, Mitarbeiter, Dauer, Richtpreis und Datum finden. Ergebnisse enthalten Live-Kennungen und erfüllte Anforderungen. Preise werden vor der Buchung erneut berechnet.","title":"Salonleistungen finden","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"string","maxLength":500,"default":"","description":"Kurze Suchbegriffe zur gewünschten Behandlung, Tätigkeit oder Ausstattung."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Gewünschte Sprache für Texte und Anzeigeformate: de, en oder ru."},"limit":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"Maximale Anzahl zurückgegebener Ergebnisse innerhalb der veröffentlichten Grenze."},"offset":{"type":"integer","minimum":0,"maximum":10000,"default":0,"description":"Ergebnisposition für die nächste Seite; next_offset aus der vorherigen Antwort verwenden."},"category_slug":{"type":"string","maxLength":120,"description":"Optionaler unveränderter Kategorie-Slug aus dem aktuellen Katalog."},"staff_id":{"type":"integer","minimum":1,"description":"Optionaler ausdrücklich gewünschter Mitarbeiter. Eine ungeeignete oder nicht verfügbare Präferenz wird nicht ersetzt."},"max_price_cents":{"type":"integer","minimum":0,"description":"Höchster Richtpreis in EUR-Cent vor einer persönlichen Aktionsprüfung. Der endgültige Preis wird separat berechnet."},"max_duration_minutes":{"type":"integer","minimum":1,"maximum":1440,"description":"Maximale Behandlungsdauer in Minuten; Anzeigeformate sind kein Eingabeformat."},"available_on":{"type":"string","format":"date","description":"Nur Ressourcen mit tatsächlich freier Kapazität an diesem lokalen Datum anzeigen."}},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/leistungen/manikuere-muenchen/","/leistungen/pedikuere/"]},{"name":"dollea_get_profile","kind":"act","impl":"imperative","description":"Identify exactly the account connected by the current credentials. Its stable ID survives changes to email, name or credentials.","title":"Identify connected account","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/en/","pages":["/en/"]},{"name":"salon_find_slots","kind":"act","impl":"imperative","description":"Find genuinely available appointments for the selected salon services. Respect specialist assignments, combined treatments and booking deadlines. Do not silently substitute a preferred specialist.","title":"Find available salon appointments","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"service_ids":{"type":"array","items":{"type":"integer","minimum":1,"description":"Optional explicitly preferred specialist. An unsuitable or unavailable preference is not substituted."},"minItems":1,"maxItems":12,"uniqueItems":true,"description":"Current numeric service IDs from salon_search_services. Multiple services are checked as one continuous visit."},"from_date":{"type":"string","format":"date","description":"Last local calendar day of the bounded search period, inclusive."},"to_date":{"type":"string","format":"date","description":"Last local calendar day of the bounded search period, inclusive."},"staff_id":{"type":"integer","minimum":1,"description":"Optional explicitly preferred specialist. An unsuitable or unavailable preference is not substituted."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Preferred language for text and display formats: de, en or ru."},"limit":{"type":"integer","minimum":1,"maximum":200,"default":100,"description":"Maximum returned result count within the published limit."},"offset":{"type":"integer","minimum":0,"maximum":10000,"default":0,"description":"Next-page result position; use next_offset from the previous response."}},"required":["service_ids","from_date"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/en/","pages":["/en/"]},{"name":"salon_get_booking","kind":"transact","impl":"imperative","description":"Read the appointment itinerary and request decisions using its private booking key. Contacts and anamnesis are not returned.","title":"Read own salon appointment","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"booking_token":{"type":"string","minLength":16,"maxLength":128,"description":"Private key of the own salon appointment from its confirmation. It does not authorize access to other appointments."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Preferred language for text and display formats: de, en or ru."}},"required":["booking_token"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/en/","pages":["/en/"]},{"name":"salon_get_campaign","kind":"act","impl":"imperative","description":"Get the salon promotion currently published in the hero, including code, eligible customers and validity. A displayed code does not establish personal discount eligibility.","title":"Get current salon offer","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Preferred language for text and display formats: de, en or ru."}},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/en/","pages":["/en/"]},{"name":"salon_get_price","kind":"answer","impl":"imperative","description":"Calculate the current price of an exact salon appointment. Promo codes need real email and phone. The check neither reserves an appointment nor redeems a code.","title":"Check salon price","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"service_ids":{"type":"array","items":{"type":"integer","minimum":1,"description":"Optional explicitly preferred specialist. An unsuitable or unavailable preference is not substituted."},"minItems":1,"maxItems":12,"uniqueItems":true,"description":"Current numeric service IDs from salon_search_services. Multiple services are checked as one continuous visit."},"start_at":{"type":"string","format":"date-time","description":"Exact appointment start as an ISO datetime with timezone offset. Resolve relative times using the supplied Munich local clock first."},"staff_id":{"type":"integer","minimum":1,"description":"Optional explicitly preferred specialist. An unsuitable or unavailable preference is not substituted."},"customer":{"type":"object","properties":{"first_name":{"type":"string","minLength":1,"maxLength":100},"last_name":{"type":"string","minLength":1,"maxLength":100},"email":{"type":"string","format":"email","maxLength":254},"phone":{"type":"string","minLength":6,"maxLength":50}},"required":["email","phone"],"additionalProperties":false,"description":"Customer-provided contacts. Email and phone are both required for a personal promotion check."},"promo_code":{"type":"string","maxLength":64,"description":"Promo code requested by the customer or currently published. Eligibility is checked by the server."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Preferred language for text and display formats: de, en or ru."}},"required":["service_ids","start_at"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/en/","pages":["/en/"]},{"name":"salon_get_quote","kind":"act","impl":"imperative","description":"Read an own salon offer using its ID and access key. Current changes are marked as requiring a new offer review. No other customers' contacts are disclosed.","title":"Check salon offer","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"quote_id":{"type":"string","format":"uuid","description":"ID of the booking offer previously prepared by the server."},"quote_token":{"type":"string","minLength":32,"maxLength":128,"description":"Offer access key returned only on creation. Do not publish it or derive it from other accounts' data."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Preferred language for text and display formats: de, en or ru."}},"required":["quote_id","quote_token"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/en/","pages":["/en/"]},{"name":"salon_search_services","kind":"act","impl":"imperative","description":"Find current salon services in Munich by treatment, specialist, duration, indicative price and date. Results include live IDs and matched requirements. Prices are recalculated before booking.","title":"Find salon services","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"string","maxLength":500,"default":"","description":"Short search terms for the desired treatment, activity or equipment."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Preferred language for text and display formats: de, en or ru."},"limit":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"Maximum returned result count within the published limit."},"offset":{"type":"integer","minimum":0,"maximum":10000,"default":0,"description":"Next-page result position; use next_offset from the previous response."},"category_slug":{"type":"string","maxLength":120,"description":"Optional unchanged category slug from the current catalog."},"staff_id":{"type":"integer","minimum":1,"description":"Optional explicitly preferred specialist. An unsuitable or unavailable preference is not substituted."},"max_price_cents":{"type":"integer","minimum":0,"description":"Maximum indicative price in EUR cents before personal promotion eligibility is checked. Final price is calculated separately."},"max_duration_minutes":{"type":"integer","minimum":1,"maximum":1440,"description":"Maximum treatment duration in minutes; display formats are not input formats."},"available_on":{"type":"string","format":"date","description":"Return only resources with actual free capacity on this local date."}},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/en/","pages":["/en/"]},{"name":"dollea_get_profile","kind":"act","impl":"imperative","description":"Определите именно аккаунт, подключённый текущими учётными данными. Постоянный идентификатор сохраняется при изменении почты, имени или данных доступа.","title":"Определить подключённый аккаунт","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/ru/","pages":["/ru/"]},{"name":"salon_find_slots","kind":"act","impl":"imperative","description":"Найдите действительно свободное время для выбранных услуг салона. Учитывайте привязки мастеров, комбинации процедур и сроки записи. Не заменяйте выбранного мастера без уведомления.","title":"Найти свободное время в салоне","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"service_ids":{"type":"array","items":{"type":"integer","minimum":1,"description":"Необязательный явно выбранный мастер. Неподходящее или недоступное предпочтение не заменяется другим."},"minItems":1,"maxItems":12,"uniqueItems":true,"description":"Актуальные числовые идентификаторы услуг из salon_search_services. Несколько услуг проверяются как один непрерывный визит."},"from_date":{"type":"string","format":"date","description":"Последний местный календарный день ограниченного периода поиска, включительно."},"to_date":{"type":"string","format":"date","description":"Последний местный календарный день ограниченного периода поиска, включительно."},"staff_id":{"type":"integer","minimum":1,"description":"Необязательный явно выбранный мастер. Неподходящее или недоступное предпочтение не заменяется другим."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Желаемый язык текста и отображения: de, en или ru."},"limit":{"type":"integer","minimum":1,"maximum":200,"default":100,"description":"Максимальное число результатов в пределах опубликованного ограничения."},"offset":{"type":"integer","minimum":0,"maximum":10000,"default":0,"description":"Позиция результатов следующей страницы; используйте next_offset предыдущего ответа."}},"required":["service_ids","from_date"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/ru/","pages":["/ru/"]},{"name":"salon_get_booking","kind":"transact","impl":"imperative","description":"Прочитайте расписание записи и решения по запросам с помощью личного ключа бронирования. Контакты и анкета анамнеза не выдаются.","title":"Получить свою запись в салон","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"booking_token":{"type":"string","minLength":16,"maxLength":128,"description":"Личный ключ своей записи в салон из подтверждения. Он не даёт доступа к другим записям."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Желаемый язык текста и отображения: de, en или ru."}},"required":["booking_token"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/ru/","pages":["/ru/"]},{"name":"salon_get_campaign","kind":"act","impl":"imperative","description":"Получите акцию салона, сейчас опубликованную в главном баннере, с кодом, условиями для клиентов и сроком действия. Показанный код не подтверждает личное право на скидку.","title":"Получить актуальную акцию салона","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Желаемый язык текста и отображения: de, en или ru."}},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/ru/","pages":["/ru/"]},{"name":"salon_get_price","kind":"answer","impl":"imperative","description":"Рассчитайте актуальную цену конкретной записи в салон. Для промокода нужны реальные почта и телефон. Проверка не резервирует запись и не использует код.","title":"Проверить цену в салоне","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"service_ids":{"type":"array","items":{"type":"integer","minimum":1,"description":"Необязательный явно выбранный мастер. Неподходящее или недоступное предпочтение не заменяется другим."},"minItems":1,"maxItems":12,"uniqueItems":true,"description":"Актуальные числовые идентификаторы услуг из salon_search_services. Несколько услуг проверяются как один непрерывный визит."},"start_at":{"type":"string","format":"date-time","description":"Точное начало записи в формате ISO с указанием часового пояса. Сначала определите относительное время по переданным местным часам Мюнхена."},"staff_id":{"type":"integer","minimum":1,"description":"Необязательный явно выбранный мастер. Неподходящее или недоступное предпочтение не заменяется другим."},"customer":{"type":"object","properties":{"first_name":{"type":"string","minLength":1,"maxLength":100},"last_name":{"type":"string","minLength":1,"maxLength":100},"email":{"type":"string","format":"email","maxLength":254},"phone":{"type":"string","minLength":6,"maxLength":50}},"required":["email","phone"],"additionalProperties":false,"description":"Предоставленные клиентом контакты. Для персональной проверки акции нужны и почта, и телефон."},"promo_code":{"type":"string","maxLength":64,"description":"Промокод, указанный клиентом или опубликованный сейчас. Право на использование проверяет сервер."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Желаемый язык текста и отображения: de, en или ru."}},"required":["service_ids","start_at"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/ru/","pages":["/ru/"]},{"name":"salon_get_quote","kind":"act","impl":"imperative","description":"Прочитайте собственное предложение салона по идентификатору и ключу доступа. Актуальные изменения отмечаются как требующие повторной проверки предложения. Контакты других клиентов не раскрываются.","title":"Проверить предложение салона","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"quote_id":{"type":"string","format":"uuid","description":"Идентификатор предложения бронирования, ранее подготовленного сервером."},"quote_token":{"type":"string","minLength":32,"maxLength":128,"description":"Ключ доступа к предложению выдаётся только при создании. Не публикуйте его и не получайте из данных чужих аккаунтов."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Желаемый язык текста и отображения: de, en или ru."}},"required":["quote_id","quote_token"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/ru/","pages":["/ru/"]},{"name":"salon_search_services","kind":"act","impl":"imperative","description":"Найдите актуальные услуги салона в Мюнхене по процедуре, мастеру, длительности, ориентировочной цене и дате. Результаты содержат действующие идентификаторы и выполненные требования. Цены пересчитываются перед записью.","title":"Найти услуги салона","annotations":{"readOnlyHint":true,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"string","maxLength":500,"default":"","description":"Короткий запрос о нужной процедуре, деятельности или оборудовании."},"language":{"type":"string","enum":["de","en","ru"],"default":"de","description":"Желаемый язык текста и отображения: de, en или ru."},"limit":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"Максимальное число результатов в пределах опубликованного ограничения."},"offset":{"type":"integer","minimum":0,"maximum":10000,"default":0,"description":"Позиция результатов следующей страницы; используйте next_offset предыдущего ответа."},"category_slug":{"type":"string","maxLength":120,"description":"Необязательный исходный slug категории из актуального каталога."},"staff_id":{"type":"integer","minimum":1,"description":"Необязательный явно выбранный мастер. Неподходящее или недоступное предпочтение не заменяется другим."},"max_price_cents":{"type":"integer","minimum":0,"description":"Максимальная ориентировочная цена в евроцентах до персональной проверки акции. Окончательная цена рассчитывается отдельно."},"max_duration_minutes":{"type":"integer","minimum":1,"maximum":1440,"description":"Максимальная длительность процедуры в минутах; форматы отображения не используются для ввода."},"available_on":{"type":"string","format":"date","description":"Возвращайте только ресурсы с фактически свободной вместимостью на эту местную дату."}},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/ru/","pages":["/ru/"]},{"name":"salon_set_services","kind":"act","impl":"imperative","description":"Aktuelle Salonleistungen in der sichtbaren Auswahl ersetzen. Der Nutzer kann sie anschließend selbst bearbeiten. Es wird nichts gebucht.","title":"Leistungen auswählen","annotations":{"readOnlyHint":false,"consequentialHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"service_ids":{"type":"array","items":{"type":"integer","minimum":1},"minItems":1,"maxItems":12,"uniqueItems":true}},"required":["service_ids"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/leistungen/manikuere-muenchen/","pages":["/leistungen/manikuere-muenchen/","/leistungen/pedikuere/"]},{"name":"salon_search_visible_services","kind":"act","impl":"declarative","description":"Salonleistungen in der sichtbaren Liste suchen und filtern. Es wird nichts gebucht.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Service suchen..."}}},"__source":"spec","__declarative":true,"page":"/leistungen/manikuere-muenchen/","pages":["/leistungen/manikuere-muenchen/","/leistungen/pedikuere/"]}],"category":"Health & Education","favicon":"/favicons/dollea.de.png","apiSurface":"spec","toolCount":23}}