HallMaster API Overview¶
This section documents the internal REST API used by HallMaster (v2). This API is not officially documented — everything here was reverse-engineered by observing browser traffic.
Base URL¶
https://v2.hallmaster.co.uk
Tech Stack¶
HallMaster v2 is built on:
- ASP.NET MVC — Server-side rendering with Razor views
- jQuery + KnockoutJS — Client-side interactivity
- Kendo UI — Grids, schedulers, and form widgets
- FullCalendar — Calendar/scheduler view
API Pattern¶
The API uses two distinct patterns:
JSON Endpoints (/api/...)¶
Read operations and some write operations use JSON endpoints:
GET /api/bookings/GetForHallgrid?id={hall_id}&statusType=All
These return JSON, typically either a bare array or an object with a Data key.
MVC Form Posts (/Admin/...)¶
Create and edit operations use traditional HTML form submissions:
- GET the form page to extract current field values
- Extract the
__RequestVerificationTokenfrom a hidden input - POST the form with all fields and the token
Important Gotchas¶
- No official API — Endpoints may change without notice
- Anti-forgery tokens — All POST requests require a
__RequestVerificationToken - Cookie-based auth — No API keys or Bearer tokens; sessions are ASP.NET cookies
- Room identification — Some views identify rooms by CSS color, not by ID
- Rate limiting — The server enforces rate limits; keep concurrent requests to 2-3
- Session expiry — Sessions expire after inactivity; use keepalive checks