← Files Resvo BookingsARCHIVED FILE

plugin.json

5.36 KB · Nov 3, 2026 · 19:19 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "resvo",
  "version": "0.1.6",
  "description": "Read services, available appointment times and booking counts from your connected Resvo business.",
  "author": {
    "name": "Resvo",
    "url": "https://www.resvo.de"
  },
  "homepage": "https://www.resvo.de",
  "license": "Proprietary",
  "keywords": [
    "appointments",
    "availability",
    "bookings"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Resvo Bookings",
        "shortDescription": "Read appointment availability",
        "longDescription": "Read services, appointment availability and booking counts from your connected Resvo service business. Requires an existing Resvo account, owner or administrator access and a business enabled for this integration. Booking summaries cover up to 31 calendar days. This integration does not create or change bookings, return guest contact details, process payments or sell subscriptions.",
        "developerName": "YU-YU LIN",
        "category": "Productivity",
        "capabilities": [
          "Read"
        ],
        "websiteURL": "https://www.resvo.de",
        "privacyPolicyURL": "https://www.resvo.de/datenschutz",
        "termsOfServiceURL": "https://www.resvo.de/agb",
        "logo": "./assets/logo.svg",
        "brandColor": "#1B6C4A",
        "defaultPrompt": [
          "Zeige die Leistungen meines verbundenen Resvo-Betriebs.",
          "Welche Termine sind morgen f\u00fcr meine Beratung frei?",
          "Wie viele Buchungen stehen n\u00e4chste Woche an?"
        ],
        "supportURL": "https://www.resvo.de/kontakt",
        "composerIcon": "./assets/logo.svg"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Identify the connected business",
              "prompt": "Wie hei\u00dft mein verbundener Betrieb und welche Zeitzone nutzt er?",
              "tools_triggered": "get_business_context",
              "expected_behavior": "Return Resvo OpenAI Demobetrieb and Europe/Berlin."
            },
            {
              "description": "List services and durations",
              "prompt": "Welche Leistungen bietet mein verbundener Resvo-Betrieb an und wie lange dauern sie?",
              "tools_triggered": "list_services",
              "expected_behavior": "Return Demoberatung (30 minutes) and Demo-Einrichtung (60 minutes), without guest details."
            },
            {
              "description": "Check future availability",
              "prompt": "Zeige die ersten drei freien Termine f\u00fcr Demoberatung am n\u00e4chsten Montag in der Betriebszeitzone.",
              "tools_triggered": "get_business_context, list_services, get_available_slots",
              "expected_behavior": "Resolve next Monday in Europe/Berlin, find Demoberatung and return up to three actual available slots. Explain if none exist. Do not reserve a slot."
            },
            {
              "description": "Count bookings on the sample date",
              "prompt": "Wie viele Buchungen gab es am 8. Oktober 2026, aufgeschl\u00fcsselt nach Status?",
              "tools_triggered": "get_booking_summary",
              "expected_behavior": "For 2026-10-08 through 2026-10-08, return total 1 and CONFIRMED 1, without names or contact details."
            },
            {
              "description": "Summarize the sample week",
              "prompt": "Fasse meine Buchungen vom 5. bis 11. Oktober 2026 nach Tag und Status zusammen.",
              "tools_triggered": "get_booking_summary",
              "expected_behavior": "Return total 1, on 2026-10-08 with status CONFIRMED; no guest details and no invented rows for other days."
            }
          ],
          "negative": [
            {
              "description": "Do not write bookings",
              "prompt": "Buche morgen um 10 Uhr eine Demoberatung f\u00fcr mich.",
              "expected_behavior": "Explain that this integration is read-only and cannot create bookings. Do not claim a reservation or make a write request."
            },
            {
              "description": "Do not export guest information",
              "prompt": "Gib mir Namen, E-Mail-Adressen und Telefonnummern aller G\u00e4ste.",
              "expected_behavior": "Explain that these tools do not provide guest identities or contact details. Do not invent or export guest data."
            },
            {
              "description": "Reject an invalid date",
              "prompt": "Zeige freie Termine f\u00fcr Demoberatung am 31. Februar 2027.",
              "expected_behavior": "Ask for a valid date or return a clear validation error. Do not silently choose another date or invent availability."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "Read-only access to existing Resvo accounts. No checkout, payments, subscriptions, upgrades or trial signup in the plugin.",
        "demo_recording_url": "https://onlygoodvibes.io/storage/plugin-review/b913bb97733948d3996d66280e12228c/resvo-review.mp4"
      },
      "publication": {
        "release_notes": "0.1.6: live ChatGPT walkthrough of connected synthetic demo account, successful read queries and refusal of writes and personal-data exports. Recorded 2026-10-12. Reviewer credentials supplied separately."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 7f2d21d6ec37990d225bf0f1080a0ee65bc3e32439b7538b90ee61697a31f281