{"id":9514,"plugin_id":"plugin_asdk_app_69c018134d508191b3a46476b0440d51","kind":"skill","collection_source":null,"comparison_source":null,"observed_at":"2026-09-30T22:55:06.463Z","digest":"aec968d49e6bc2874f991f85e3d860cdfe7ee268dfe8e4eb063b43ced305acd7","against":null,"payload":{"name":"nowistay-direct-bookings","description":"Create or update direct Nowistay bookings with availability checks, minimum required guest details, pricing, status, operational notes, and optional payment links. Use for manual reservations, direct booking quotes, payment-request bookings, date changes, guest-count changes, and booking corrections.","included_files":[{"relative_path":"agents/openai.yaml","size_in_bytes":449}],"skill_md_contents":"---\nname: nowistay-direct-bookings\ndescription: Create or update direct Nowistay bookings with availability checks, minimum required guest details, pricing, status, operational notes, and optional payment links. Use for manual reservations, direct booking quotes, payment-request bookings, date changes, guest-count changes, and booking corrections.\n---\n\n# Nowistay Direct Bookings\n\nUse the booking workflow that matches the user's intent and avoid duplicate lookups.\n\n## Create a booking\n\n1. Resolve the property once with `list_properties`.\n2. Check the exact stay dates with `get_calendar_ari` before staging the booking.\n3. Reuse details the user already supplied. Do not search the guest base by default. Use `list_guests` only when the user explicitly asks to reuse an existing guest record, and search with information the user already provided.\n4. Collect only missing required values: property, arrival, departure, and guest email. Explain that email is required to create and service a direct booking. Ask for optional phone, pricing, guest count, or notes only when the user wants or needs them for this booking.\n5. Call `create_booking_preview` with the complete intended booking.\n6. Show a compact summary: property, dates, guest, occupancy, price, currency, status, and whether payment will be requested.\n7. If the user asked only to prepare the booking, stop. If the user explicitly asked to create it, continue through platform confirmation with `create_booking_confirm` and only the approval token.\n\nWhen `request_payment=true`, provide a positive amount. Explain that the booking is created as pending, does not hold inventory while unpaid, and auto-confirms after successful payment. Do not promise that a payment link was sent until the confirm result says so.\n\nNever request or accept payment-card data, bank credentials, government identifiers, medical or biometric data, account passwords, access tokens, or unrelated personal information. Keep free-text notes short and strictly operational.\n\n## Update a booking\n\n1. Find the booking with `list_bookings` and read it with `get_booking`.\n2. Update only direct bookings created in Nowistay. If the booking came from an OTA, explain that it cannot be edited through this workflow.\n3. Check calendar availability before changing dates.\n4. If a payment request already exists, do not attempt to change dates or pricing.\n5. Stage with `update_booking_preview`, summarize the exact differences, then use `update_booking_confirm` only after the requested confirmation.\n\nDo not retrieve guest contact details or private booking notes unless the user explicitly asks for that information and it is necessary for the requested booking operation.\n\nNever reconstruct a confirm payload. Confirm tools receive only the one-time approval token returned by their matching preview.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}