{
'accessory_users'?: [ {
'checked_in': <bool>,
'display_name': <str>,
'email': <str>,
'status': <str>,
'user_id': <str>,
} ],
'accessory_users_external'?: [ {
'name': <str>,
'email': <str>,
'status': <str>,
} ],
'accessory_users_need_rsvp': <bool>,
'account_number': <str>,
'account_number_description': <str>,
'admin_note': <str>,
'anyapprovers': <bool>,
'approvals': [ {
'approval_id': <str>,
'approver'?: {
'email': <str>,
'display_name': <str>,
'user_id': <str>,
},
'changed': <datetime>,
'status': <str>,
} ],
'autocancelled': <bool>,
'blocks': [ <str> ],
'buffer_before': <dec>,
'cancelled': <bool>,
'cancelled_date'?: <datetime>, # Only if cancelled
'cancelled_reason'?: <str>, # Only if cancelled
'cancelled_by'?: {
'email': <str>,
'display_name': <str>,
'user_id': <str>,
}, # Only if cancelled
'checked_in'?: <bool>,
'checked_in_at'?: <datetime>,
'checked_out_at'?: <datetime>,
'checkin_at'?: <datetime>,
'checkin_before_minutes'?: <dec>,
'checkout_after_minutes'?: <dec>,
'created': <datetime>,
'created_by': {
'email': <str>,
'display_name': <str>,
'user_id': <str>,
},
'current': <bool>,
'denied_by_admin_reason?': <str>,
'duration': <dec>, # seconds
'end': <datetime>,
'expires_at_if_unpaid?': <datetime>,
'external_email?': <str>, # Email captured by a web integration request.
# Form responses are not found on parent reservations,
# but are rather only found in single resource or child
# reservations.
'form_responses'?: [ {
'form': {
'admins_can_skip'?: <bool>,
'form_id': <str>,
'name': <str>,
'portal_id'?: <str>,
# Current schema for form, which may be different
# from the schema at the time of the form response.
'schema': [ {
'adminOnly'?: <bool>,
'customId'?: <str, none>,
'fileUploadOptions'?: {
'extensions'?: [ <str, none> ],
'maxBytes'?: <int, none>,
'minBytes'?: <int, none>,
},
'hint'?: <str>,
'inputType': <str>,
'label'?: <str>,
'max'?: <dec>,
'min'?: <dec>,
'model': <str>,
'publicToUsers'?: <bool>,
'readonly': <bool>,
'required': <bool>,
'requiredValues'?: [ <str> ] <none>,
'selectOptions'? {
'hideNoneSelectedText'?: <bool>,
'noneSelectedText'?: <str>,
},
'shortName'?: <str, none>,
'showIfScript'?: <str, none>,
'showOnCalendar'?: <bool>,
'showOnCalendarSyncTitle'?: <bool>,
'showOnReservationView'?: <bool>,
'showOnEmails'?: <bool>,
'showOnEmailSubject'?: <bool>,
'step'?: <dec>,
'type': <str>,
'values'?: [ <str> ],
} ],
'site_id'?: <str>,
'values': [ {
} ],
},
'form_response_id': <str>,
# Schema at the time of the form response.
'schema': [ {
'adminOnly'?: <bool>,
'customId'?: <str, none>,
'fileUploadOptions'?: {
'extensions'?: [ <str, none> ],
'maxBytes'?: <int, none>,
'minBytes'?: <int, none>,
},
'hint'?: <st
'inputType': <str>,
'label'?: <str>,
'max'?: <dec>,
'min'?: <dec>,
'model': <str>,
'publicToUsers'?: <bool>,
'readonly': <bool>,
'required': <bool>,
'requiredValues'?: <[<str>], none>,
'selectOptions'? {
'hideNoneSelectedText'?: <bool>,
'noneSelectedText'?: <str>,
},
'shortName'?: <str, none>,
'showIfScript'?: <str, none>,
'showOnCalendar'?: <bool>,
'showOnCalendarSyncTitle'?: <bool>,
'showOnReservationView'?: <bool>,
'showOnEmails'?: <bool>,
'showOnEmailSubject'?: <bool>,
'step'?: <dec>,
'type': <str>,
'values'?: [ <str> ],
} ],
'values': {
<str>: <str, dec, [dec], [str], none>,
},
} ],
'invoiced_automatically': <bool>,
'is_loan': <bool>,
'maintenance': <bool>,
'maintenance_nonblocking'?: <bool>, # Only present if maintenance is True
'named_unit'?: {
'named_unit_id': <str>,
'name': <str>,
'properties': { <str>: <str>, ... }
},
'note': <str>,
# Not populated for ical entries.
'original_reservation_created'?: <datetime>,
'overdue'?: <bool>,
'price'?: <dec>
'price_int'?: <int>,
'projects'?: [ {
'active': <bool>,
'created': <datetime>,
'hidden_note': <str>,
'last_modified': <datetime>,
'name': <str>,
'project_id': <str>,
'status': <str>,
'status_details': <str>,
} ],
'prorate_half_interval_multiplier'?: <dec>,
'purpose': <str>,
'rate_description': <str>,
'rate_basis': <str>,
'rate_id'?: <dec>,
'rate_quote_requested': <bool>,
'rate_meta_data': <dict>,
'rate_script'?: <str>,
'rate_site_reservation_script_id'?: <str>,
'rate_unit': <str>,
'recurring_reservation'?: {
'description': <str>,
'end': <datetime>,
'first_reservation_id': <str>,
'maintenance': <bool>,
'maintenance_nonblocking': <bool>,
'original_recurring_reservation_id'?: <str>,
'recipe': {
'cancellations': [ <datetime> ],
'every': <num>,
'on': [ <bool> ], # which week days to recur on
'unit': <str>,
'until': <datetime>,
},
'recurring_reservation_id': <str>,
'replaced_recurring_reservation_id'?: <str>,
'start': <datetime>,
},
'reminder_seconds': <dec>,
'replaced_form_response_id'?: <str>,
'replaced_reservation_id'?: <str>,
# For multi-resource reservations, this field will not exist
# and the resources will all be in 'reservation_children'.
# Additional reservable properties such as tags and custom properties
# are available through API functions.
'reservable'?: {
'active': <bool>,
'anyapprovers': <bool>,
'barcode': <str>,
'bgcolor': <str>,
'buffer_before': <dec>,
'can_return': <bool>,
'category': <str>,
'class'?: <str>,
'currency'?: <str>,
'enable_end_early': <bool>,
'future_loans': <bool>,
'is_addon': <bool>,
'loanable': <bool>,
'name': <str>,
'qreserve_id': <str>,
'rate_name_only': <bool>,
'rate_quotes': <bool>,
'reservable_id': <str>,
'reservable_type': <str>,
'reservation_max_duration'?: <dec>, # seconds
'reservation_minimum'?: <dec>, # seconds
'reservation_unit_limit'?: <dec>,
'returnable': <bool>,
'show_account_number_on_reservations': <bool>,
'show_note_on_reservations': <bool>,
'show_purpose_on_reservations': <bool>,
'units': <dec>,
'units_a_f_t_id'?: <str>,
'units_name': <str>,
},
# If this was a support request for another resource it is included here.
'support_for_reservable'?: {
'active': <bool>,
'anyapprovers': <bool>,
'bgcolor': <str>,
'buffer_before': <dec>,
'can_return': <bool>,
'category': <str>,
'class'?: <str>,
'currency'?: <str>,
'enable_end_early': <bool>,
'future_loans': <bool>,
'is_addon': <bool>,
'loanable': <bool>,
'name': <str>,
'qreserve_id': <str>,
'rate_name_only': <bool>,
'rate_quotes': <bool>,
'reservable_id': <str>,
'reservable_type': <str>,
'reservation_max_duration'?: <dec>, # seconds
'reservation_minimum'?: <dec>, # seconds
'reservation_unit_limit'?: <dec>,
'returnable': <bool>,
'show_account_number_on_reservations': <bool>,
'show_note_on_reservations': <bool>,
'show_purpose_on_reservations': <bool>,
'units': <dec>,
'units_a_f_t_id'?: <str>,
'units_name': <str>,
},
'reservation_children': [ <self> ],
'reservation_id': <str>,
# Parent reservation ID (for children)
'reservation_parent'?: <str>,
'reservation_type': <str>,
'reservation_url': <str>,
# May be missing on ICS reservations.
'reserved_for'?: {
'email': <str>,
'display_name': <str>,
'user_id': <str>,
},
'reserved_for_supervisor'?: {
'email': <str>,
'display_name': <str>,
'user_id': <str>,
},
'reserved_for_text'?: <str>,
'returned'?: <datetime>,
'site_id': <str>,
'site_name': <str>,
'sku'?: <str>,
'soft': <bool>,
'start': <datetime>,
'status': <str>,
'summary': <str>,
'tax_code'?: <str>,
'tax_note'?: <str>,
'tax_rate'?: <dec>,
'total_units'?: <dec>,
'units'?: <dec>,
}