Overbooking policies
Make overbooking an explicit decision rather than an accidental consequence of overlapping events. Resource policies can block, warn, or allow while retaining typed issues and severity for the host application.
Loading interactive demo…
What you configure
- overbooking.mode
- Choose block, warn, or allow for the resource profile.
- maxUtilizationPercent
- Set the policy's utilization ceiling.
- reserveUnits
- Account for capacity that should remain reserved.
Essential integration
This assumes the shared Quick start already provides premiumLicense and, for UI views, premiumCalendarOptions. Only the feature-specific setup is shown.
import { AdvancedResourcePlanner } from '@wts-calendar/core/advanced-resource-planning';
const planner = new AdvancedResourcePlanner({
license: premiumLicense,
timeZone: 'UTC',
resources: [
{ id: 'design', title: 'Design studio', capacity: 2 },
{ id: 'engineering', title: 'Engineering', capacity: 4 },
],
events: [
{
id: 'review',
title: 'Design review',
resourceId: 'design',
start: '2026-09-07T09:00:00Z',
end: '2026-09-07T10:30:00Z',
},
],
profiles: [
{ resourceId: 'design', overbooking: { mode: 'warn', maxUtilizationPercent: 100 } },
],
});
export const decision = planner.evaluateBooking({
resourceId: 'design',
start: '2026-09-07T09:30:00Z',
end: '2026-09-07T10:00:00Z',
units: 2,
});
console.log(decision.allowed, decision.projectedUtilizationPercent, decision.issues);Behavior and lifecycle
- Evaluation retains issues even when the chosen mode allows the proposal.
- Policy-adjusted capacity is also available to utilization analysis.
Limits and responsibilities
- A warning is not a completed approval workflow; connect workflow hooks separately when needed.
- The planner does not prevent a separate client from booking stale capacity.
Premium
Enable this capability
- Optional module
- @wts-calendar/core/advanced-resource-planning
- Local capability ID
- advanced-resource-planning · enabled by package-wide Premium
Use the request form to describe your project and deployment origins. Pricing and terms are confirmed privately. A WTS license is separate from provider credentials; do not send passwords or production access tokens.
The live example uses a browser-visible deployment key restricted to this package and approved origins. It does not collect license keys or visitor credentials.