USP Playground

Walk through a complete USP scheduling flow step-by-step. This interactive demo runs entirely in the browser, simulating request and response payloads from USP scenario fixtures at each stage.

1. Discovery

Fetch the business's USP profile to learn what capabilities it supports.

Configuration

Supports core Catalog, Availability, and Bookings capabilities.

GET /.well-known/usp
Response

2. Capability Negotiation

The platform intersects its own capabilities with those declared by the business to determine the active set for this session.

Business Capabilities

    Negotiated Intersection

      Configuration

      Platform Profile
      Negotiated Result

      3. Browse Services

      Query the service catalog to find bookable services.

      Configuration

      POST /services/list
      Response

      4. Check Availability

      Query available time slots for the selected service.

      Configuration

      POST /availability/query
      Response

      5. Hold Slot

      Temporarily reserve a slot before completing the booking. This step is optional — only available when the business declares "holds": true.

      Configuration

      POST /availability/hold
      Response

      6. Create Booking

      Create a confirmed booking from the held (or unheld) slot.

      Configuration

      POST /bookings
      Response

      7. Complete Payment

      Demonstrate the payment confirmation flow for Standalone mode bookings.

      Configuration

      POST /bookings/{id}/confirm-payment
      Response

      8. Manage Booking

      Demonstrate post-booking lifecycle operations and webhook events.

      Configuration

      GET /bookings/{booking_id}
      Response
      About this demo

      This playground runs entirely in your browser. It simulates USP request/response payloads from scenario fixtures and does not call live APIs. Use the mode and transport toggles to preview how the same flow appears across Standalone vs UCP-Native profiles and REST, MCP, A2A, or ESP bindings.