booking

Automate Eversports court reservations and cancellations via the booking API.

2|Updated Mar 22, 2026
One-click install
npx skills add https://github.com/hutoroff/squash-bot --skill booking-hutoroff
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: booking
Source: https://github.com/hutoroff/squash-bot/tree/main/.claude/skills/booking
Command: npx skills add https://github.com/hutoroff/squash-bot --skill booking-hutoroff

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

The booking Skill documents and explains the booking service that wraps the reverse-engineered Eversports API, removing guesswork when integrating court reservation, cancellation, and slot discovery into the squash-bot ecosystem.

Core Features & Use Cases

  • Eversports client semantics: cookie-based session management, login retry via withAuth, and special 401 handling for CreateBooking.
  • Serialized booking flow: CreateBooking is a 5-step, mutex-serialized operation to avoid duplicate reservations and to surface best-effort tracking without aborting successful bookings.
  • HTTP API and per-credential dispatch: exposes health/version endpoints and a set of authenticated routes for matches, courts, slots, and facility lookups, with support for per-account client caching.
  • Operational constraints: timezone-aware RFC3339 timestamps using facility local offsets, environment-driven configuration, and HTML parsing of calendar pages.
  • Use Case: Integrate this Skill when adding or modifying booking logic, implementing auto-booking cron jobs, or troubleshooting booking failures caused by session, credential, or timezone issues.

Quick Start

Ask the booking skill to summarize the CreateBooking flow, required headers and credentials, retry and serialization behavior, and the timezone handling you must apply when calling the booking API.

Frequently Asked Questions about booking

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate Eversports court booking and cancellation via HTTP API?

Automate Eversports court booking by wrapping the reverse-engineered HTTP API to create and cancel matches, list courts and slots, and resolve facility information using serialized, authenticated API requests.

How does the Eversports booking flow handle session management and authentication retries?

Eversports session management uses cookie-based authentication with bearer authorization, implementing login retries via a withAuth wrapper and special 401 handling during the CreateBooking process.

How do I prevent duplicate court reservations when automating Eversports bookings?

Prevent duplicate court reservations by using a mutex-serialized, 5-step CreateBooking flow that ensures booking operations are processed sequentially and surfaces tracking errors without aborting successful bookings.

How do I handle timezone-aware RFC3339 timestamps for Eversports facility bookings?

Handle timezone-aware RFC3339 timestamps by applying facility local offsets to scheduled booking scenarios, ensuring accurate calendar parsing and slot discovery across different facility locations.

Can I parse Eversports calendar HTML pages to extract available court slots?

Parse Eversports calendar pages by extracting available court slots and match schedules using HTML parsing techniques integrated into the booking service's slot discovery and facility lookup operations.

Why do my automated Eversports bookings fail with 401 unauthorized errors?

Eversports booking failures with 401 errors are handled through cookie-based session management with retry semantics, per-credential client caching, and special authorization handling during the serialized CreateBooking flow.