Skip to main content

Calendar availability block

Availability blocks override an organization's business calendar for a time range. Blocks can now be scoped to a specific contact.

Fields

Field NameTypeNotes
CalendarAvailabilityBlockIdInt32Primary key
CalendarIdInt32Parent calendar
StartDateTimeOffsetStart of the override window
EndDateTimeOffsetEnd of the override window
IsAvailableBooleantrue adds availability, false removes availability
DescriptionStringOptional description
CustomValuesDictionaryFree-form metadata
ContactIdNullable Int32Optional contact scope. null means org-wide; a value applies the block only for that contact.
ContactContactOptional scoped contact navigation
RecurrenceRuleCalendarAvailabilityRecurrenceRuleOptional recurrence pattern

Contact-scoped availability

ContactId is the typed relationship used to scope carrier/customer-specific business calendar exceptions. For example, a carrier closure should be stored as an availability block with that carrier's contact id instead of using a magic customValues.carrierId key.

When calculating businessDays with a contact id, the API includes:

  • org-wide blocks where ContactId is null
  • blocks whose ContactId matches the requested contact

When no contact id is provided, all blocks are considered for backward compatibility.