Getting Started

Get SlotWeave running on your website in under 2 minutes. All you need is an operator account and one line of code.

Quickstart

  1. Create your account at slotweave.com/signup. Your 14-day free trial starts immediately —no credit card required.
  2. Add your first product in the operator dashboard. A product is anything your customers book: a tour, a class, a service, an appointment.
  3. Set your availability. Define your working hours, slot durations, and capacity per slot.
  4. Connect Stripe. Enter your Stripe API keys so payments go directly to your account.
  5. Embed the widget. Copy the embed code from your dashboard and paste it into your website.

Embed Code

The SlotWeave widget is loaded via a single script tag. Place it anywhere on your page where you want the booking interface to appear.

Basic embed

<div id="slotweave-booking"></div>
<script src="https://cdn.slotweave.com/widget.js"
  data-key="YOUR_API_KEY"
  data-theme="light">
</script>

With options

<div id="slotweave-booking"></div>
<script src="https://cdn.slotweave.com/widget.js"
  data-key="YOUR_API_KEY"
  data-theme="dark">
</script>

You can find your API key in the operator dashboard under Settings > Widget. The widget also requires a <div id="slotweave-booking"></div> element on the page.

Configuration

The widget accepts the following data attributes for configuration:

AttributeRequiredDescription
data-keyYesYour API key (found in the operator dashboard under Settings > Widget)
data-themeNo"auto" (default), "light", or "dark"

Platform Guides

Step-by-step instructions for embedding SlotWeave on popular platforms.

WordPress

Two options: use a Custom HTML block, or install our plugin.

Option 1: Custom HTML Block

  1. Open the page where you want the booking widget in the WordPress editor
  2. Add a new Custom HTML block
  3. Paste the SlotWeave embed code
  4. Save and publish
<!-- Paste this in a Custom HTML block --> <div id="slotweave-booking"></div> <script src="https://cdn.slotweave.com/widget.js" data-key="YOUR_API_KEY" data-theme="light"> </script>

Option 2: WordPress Plugin

  1. Install the "SlotWeave Booking" plugin from the WordPress plugin directory
  2. Activate the plugin and enter your API key in Settings > SlotWeave
  3. Use the [slotweave] shortcode on any page: [slotweave key="YOUR_API_KEY"]

Squarespace

  1. In the Squarespace editor, navigate to the page where you want the widget
  2. Click Add Section and choose Code
  3. In the code editor, paste the SlotWeave embed script
  4. Save and publish your page
<div id="slotweave-booking"></div> <script src="https://cdn.slotweave.com/widget.js" data-key="YOUR_API_KEY" data-theme="light"> </script>

Note: Squarespace Business plan or higher is required to use custom code blocks.

Wix

  1. In the Wix editor, click Add Elements (+) > Embed Code > Embed HTML
  2. Select "Code" mode and paste the SlotWeave embed script
  3. Resize the embed element to fit your page layout
  4. Publish your site
<div id="slotweave-booking"></div> <script src="https://cdn.slotweave.com/widget.js" data-key="YOUR_API_KEY" data-theme="light"> </script>

Note: Wix renders embeds in an iframe. The widget adapts automatically, but you may need to adjust the iframe height in your Wix settings.

Custom HTML / Frameworks

For static HTML sites, React, Next.js, Vue, or any other framework, drop the script tag wherever you want the widget.

<!DOCTYPE html> <html> <head> <title>Book Now</title> </head> <body> <h1>Book your experience</h1> <div id="slotweave-booking"></div> <script src="https://cdn.slotweave.com/widget.js" data-key="YOUR_API_KEY" data-theme="light"> </script> </body> </html>

The widget renders inside the <div id="slotweave-booking"> element. This element must be present on the page.

API Reference

The SlotWeave REST API is available on the Pro plan. It lets you programmatically manage products, availability, and bookings.

Authentication

All API requests require an API key passed in the Authorization header:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  https://api.slotweave.com/v1/products

Generate your API key from the operator dashboard under Settings > API.

Endpoints

GET /v1/products List all products
GET /v1/products/:id Get a product
POST /v1/products Create a product
PUT /v1/products/:id Update a product
DELETE /v1/products/:id Delete a product
GET /v1/availability/:product_id Get available slots
GET /v1/bookings List bookings
GET /v1/bookings/:id Get a booking
POST /v1/bookings Create a booking
PUT /v1/bookings/:id/cancel Cancel a booking
GET /v1/staff List staff members
GET /v1/webhooks List webhook subscriptions
POST /v1/webhooks Create webhook subscription

Code Examples

Fetch available slots (JavaScript)

const response = await fetch(
  "https://api.slotweave.com/v1/availability/prod_abc123?date=2026-04-15",
  {
    headers: {
      "Authorization": "Bearer YOUR_API_KEY",
      "Content-Type": "application/json"
    }
  }
);

const { slots } = await response.json();

slots.forEach(slot => {
  console.log(`${slot.time} — ${slot.remaining} spots left`);
});

Create a booking (cURL)

curl -X POST https://api.slotweave.com/v1/bookings \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "product_id": "prod_abc123",
    "slot_id": "slot_2026041510",
    "customer": {
      "name": "Jane Smith",
      "email": "jane@example.com"
    },
    "quantity": 2
  }'

Webhook payload example

{
  "event": "booking.created",
  "timestamp": "2026-04-15T10:30:00Z",
  "data": {
    "id": "bk_xyz789",
    "product_id": "prod_abc123",
    "slot": "2026-04-15T10:00:00Z",
    "customer": {
      "name": "Jane Smith",
      "email": "jane@example.com"
    },
    "quantity": 2,
    "total": 15000,
    "currency": "usd",
    "status": "confirmed"
  }
}

Troubleshooting

Widget not loading

  • Check that your operator ID and product ID are correct
  • Ensure the script URL is https://cdn.slotweave.com/widget.js (not http)
  • Check your browser console for errors
  • Verify your domain is added to your allowed embed domains in the dashboard

Payments not working

  • Confirm your Stripe API keys are entered correctly in the dashboard
  • Use Stripe test mode keys for development, live keys for production
  • Check that your Stripe account is fully activated and verified

Need help?

Email us at support@slotweave.com or check our status page for any service issues.