Most people who may live in a unit booked through this product group. A head count, not target occupancy. Must be at least 1 and >= minOccupants when both are set. Null or omit for no limit.
minOccupants
number | null
No
Fewest people who may live in a unit booked through this product group. A head count, not target occupancy. Must be at least 1. Null or omit for no limit.
academicYear
string
Yes
The academic year in YYYY/YYYY format (e.g. 2026/2027)
agreementId
string
No
The ID of the associated agreement
allowBookingExpiryTimer
boolean
No
Whether booking expiry timer is allowed
cancelationPolicyId
string
No
The ID of the cancelation policy to associate
contractTemplateExternalId
string | null
No
External ID of the contract template (e.g. for e-signing). Omit or pass null for not set.
defaultExpiryDurationInSeconds
number
No
The default expiry duration in seconds
productSegment
ProductSegment
No
Segment classification for this student product group - ProductSegment
Contract dates establish two levels of boundaries that control the allowable booking window. All four
fields are required.
The outer bounds (contractEarliestStartDate and contractLatestEndDate) define the absolute window — no
booking can start before contractEarliestStartDate or end after contractLatestEndDate.
The inner bounds (contractLatestStartDate and contractEarliestEndDate) define flexibility within those
outer limits:
A booking can start anywhere between contractEarliestStartDate and contractLatestStartDate
(e.g. a student arriving late).
A booking can end anywhere between contractEarliestEndDate and contractLatestEndDate
(e.g. a student leaving early).
Field
Type
Required
Description
contractEarliestStartDate
string
Yes
The earliest date a booking may start (outer lower bound)
contractLatestStartDate
string
Yes
The latest date a booking may start (inner upper bound for start)
contractEarliestEndDate
string
Yes
The earliest date a booking may end (inner lower bound for end)
contractLatestEndDate
string
Yes
The latest date a booking may end (outer upper bound)
The publishing window controls when products are visible to bookers. Its lifecycle moves through three
states: SCHEDULED (not yet active), ONGOING (currently active), and FINISHED (window has ended).
Field
Type
Required
Description
startDate
string
No
Date when products start showing. Defaults to today if not provided.
endDate
string
No
Date when products stop showing. Defaults to contractLatestEndDate from the request payload if not provided.