Facility Booking
Venue, room, and facility reservation management — online self-service booking, conflict detection, rate management, and revenue tracking for every municipal space.
Availability Check
Booking Creation
Double-Book Prevention
Concurrent Bookings
Purpose-Built for Canadian Municipalities
Purpose & Scope
What this module owns
Clear ownership boundaries prevent duplication and ensure every capability has exactly one authoritative home.
Owns
8Delegated to
4Rate/fee calculation logic
Payment processing & refunds
Citizen authentication & accounts
Facility maintenance work orders
These capabilities are handled by dedicated modules and consumed via stable API contracts — keeping boundaries clean and ownership unambiguous.
Core Capabilities
What it does
4 capability groups comprising 7 discrete capabilities — each with API surface, business rules, and data ownership.
Facilities, venues, rooms, fields, courts, pools; capacity; amenities; photos; accessibility features; seasonal availability; GIS-linked.
Comprehensive Types
ARENA, POOL, FIELD, COURT, ROOM, HALL, PARK, PAVILION — each with type-specific attributes and configuration.
Capacity & Amenities
Max capacity, amenity list (AV, kitchen, WiFi, stage), accessibility features (AODA compliance), and photos.
Hierarchy Support
Parent-child facility relationships: rooms within buildings, fields within parks; book individually or as a group.
GIS Integration
Facilities linked to geospatial-engine for map-based search and proximity filtering.
Real-time availability; recurring blocks (leagues, programs); maintenance windows; holiday closures; visual calendar with drag-to-book.
Real-Time Availability
Live calendar view showing booked, available, and tentative time slots with color-coded status.
Recurring Blocks
Block recurring time slots for leagues, programs, and internal use — repeating bookings with iCal RRULE support.
Maintenance Windows
Automatic blocking for scheduled maintenance, ice resurfacing, pool closures, and seasonal shutdowns.
Drag-to-Book
Administrative calendar interface with drag-to-book for staff to quickly create bookings.
Every module owns a single bounded context, exposes stable APIs, and can be composed into any Civic product — that's the architecture that scales.
Krutik Parikh
Creator of Civic
Data Model
Entity Architecture
2 entities with 4 relationships — the authoritative schema for this bounded context.
Entities
Select an entity to explore its fields and relationships
API Surface
Integration Endpoints
8 RESTful endpoints across 5 resource groups — plus 4 domain events for async integration.
/api/v1/facilities
List facilities (filter: type, capacity, amenities, area)
/api/v1/facilities/{id}/availability
Check availability for date range
Ecosystem
Products that depend on this module
5 Civic products consume Facility Booking — making it one of the most critical platform services in the ecosystem.
Recreation Management
Arena, pool, field, court, room bookings
View product →
Tourism & Events
Event venue booking
View product →
Council & Agenda
Council chamber, committee room booking
View product →
Volunteer Management
Volunteer event space
View product →
Citizen Engagement
Public meeting space
View product →
Technical Specifications
Performance, Compliance & Configuration
Availability Check
Booking Creation
Double-Booking Prevention
Online Booking Uptime
Concurrent Bookings
FAQ
Frequently Asked Questions
Ready to Integrate
Build on Facility Booking
Request an architecture brief, integration guide, or live demo environment for your team.