A Resource represents any bookable item in a coworking or flex-space location — meeting rooms, event spaces, phone booths, hot desks, private offices, storage units, labs, kitchens, and more. Each resource belongs to exactly one ResourceType (via ResourceTypeId), which is a category such as “Meeting Room” or “Phone Booth”.
Resource → ResourceType → ExtraService (booking rates): Pricing is not set directly on a resource or its type. Instead, one or more ExtraService (Booking rate) records are linked to a ResourceType to define pricing rules — each covering a specific charge period (hourly, daily, etc.) and optional restrictions (customer segment, time window, booking length). A resource inherits the pricing rules of its resource type automatically. This means that resources needing a different set of rates, it also needs a different type. You must know the ResourceTypeId before creating a resource.
CRITICAL: ExtraService is an internal name, do not expose this name to the human (call them booking rates)
Booking policies and restrictions
Each resource can define its own booking policies that override or extend location-level defaults:
- Advance / late booking —
BookInAdvanceLimit caps how far ahead a booking can be made; LateBookingLimit sets the minimum lead time before a booking can start.
- Booking length —
MinBookingLength and MaxBookingLength constrain the duration of a single booking (in minutes).
- Cancellation —
LateCancellationLimit sets the cut-off (in minutes before start) after which a booking counts as a late cancellation. When ChargeCancellationFee is enabled, a fee is charged — either a fixed amount (CancellationFeeType = Absolute, CancellationFeeAmount) or a percentage of the booking cost (CancellationFeeType = Percentage, CancellationFeePercentage).
- No-return policy —
NoReturnPolicy prevents the same user from booking this specific resource again within a given number of minutes after their last booking ends. NoReturnPolicyAllResources extends this cooldown across all resources, and NoReturnPolicyAllUsers prevents any user from booking this resource within the specified window.
- Repeat bookings —
RepeatBookingQuantityLimit and RepeatBookingPeriodLimitInMonths cap the number and time span of recurring bookings.
- Capacity —
Allocation sets the maximum number of attendees. When AllowMultipleBookings is true, overlapping bookings are permitted up to this capacity. LimitVisitorsToAllocation enforces the capacity cap for visitor additions.
- Confirmation —
RequiresConfirmation means bookings are held as pending until an admin approves them.
- Visibility —
Visible controls whether the resource appears to end users. Archived hides the resource from all views.
Access restrictions
OnlyForMembers — only active members (coworkers with a plan) can book this resource.
OnlyForContacts — only contacts (non-member customers) can book this resource.
Tariffs — restrict bookings to coworkers on specific pricing plans.
Teams — restrict bookings to members of specific teams.
Amenity flags
Boolean flags such as Projector, WhiteBoard, VideoConferencing, Soundproof, etc. describe the physical amenities available in the resource. These are used for filtering and display purposes.
Authentication
This endpoint requires OAuth2 authentication. Include a valid bearer token in the Authorization header.
The authenticated user must be a full unrestricted administrator or have the Resource-Read role.
Path Parameters
The Id of the Resource record to retrieve.
Code Examples
curl -X GET \
"https://spaces.nexudus.com/api/spaces/resources/87654321" \
-H "Authorization: Bearer YOUR_TOKEN"
Response
200
Name of the location (read-only, resolved from BusinessId)..
Display name of the resource (e.g., ‘Board Room A’, ‘Phone Booth 3’)..
Built-in resource category used for system behaviour (e.g., MeetingRoom, HotDesk, PhoneBooth). Distinct from the custom ResourceType.. See eResourceType enum values: 0 = None, 1 = MeetingRoom, 2 = HotDesk, 3 = PrivateOffice, 4 = EventSpace, 5 = Lab, 6 = Kitchen, 7 = TreatmentRoom, 9 = StorageUnit, 10 = Machine, 11 = DayPass, 12 = PhoneBooth, 99 = Other.
Name of the resource type (read-only, resolved from ResourceTypeId)..
Free-text description shown to users when viewing the resource details..
Custom HTML or text included in booking confirmation emails for this resource..
Whether the resource is visible and bookable by end users. Hidden resources can still be booked by admins..
When true, bookings for this resource are held as pending until an admin approves them..
Sort position when listing resources. Lower values appear first..
Optional grouping label used to cluster related resources together in the UI (e.g., ‘Floor 2’)..
Amenity flag: resource has a projector..
Amenity flag: resource has internet access..
Amenity flag: resource has a conference phone..
Amenity flag: resource has a standard phone..
Amenity flag: resource has a whiteboard..
Amenity flag: resource has a large display..
Amenity flag: catering is available for this resource..
Amenity flag: tea and coffee are available..
Amenity flag: drinks are available..
Amenity flag: resource has a security lock..
Amenity flag: resource has CCTV coverage..
Amenity flag: resource has a voice recorder..
Amenity flag: resource has air conditioning..
Amenity flag: resource has heating..
Amenity flag: resource has natural light..
Amenity flag: resource has a standing desk..
Amenity flag: resource is located in a quiet zone..
Amenity flag: resource has a wireless charger..
Amenity flag: resource has a privacy screen..
Amenity flag: resource is soundproof..
Amenity flag: resource has video conferencing equipment..
Amenity flag: resource has a dual display screen..
Amenity flag: resource has a display screen..
Amenity flag: resource has wireless presentation capabilities..
Amenity flag: resource has a PA system..
Amenity flag: resource has a desktop monitor..
Amenity flag: resource has a flip chart..
Amenity flag: resource has secure storage..
When true, overlapping bookings are permitted up to the Allocation capacity..
Maximum number of attendees or concurrent bookings allowed. Used with AllowMultipleBookings to control capacity..
LimitVisitorsToAllocation
When true, the total number of visitors added to a booking cannot exceed the Allocation capacity..
Maximum number of days in advance a booking can be made for this resource. Null means no limit..
Minimum lead time (in minutes) required before a booking can start. Prevents last-minute bookings..
Cut-off in minutes before the booking start time. Cancellations after this point are considered late and may incur a fee..
Minimum interval (in minutes) between consecutive bookings on this resource, used as a buffer for setup or cleaning..
Cooldown in minutes: prevents the same user from booking this specific resource again within this window after their last booking ends..
NoReturnPolicyAllResources
Cooldown in minutes: prevents the same user from booking any resource after booking this one, for the specified window..
Cooldown in minutes: prevents any user from booking this resource within the specified window after the previous booking ends..
Maximum allowed duration for a single booking on this resource, in minutes..
Minimum allowed duration for a single booking on this resource, in minutes..
JSON-encoded shifts configuration defining the resource’s availability schedule..
Access Control Group Ids.
GPS longitude coordinate of the resource’s physical location..
GPS latitude coordinate of the resource’s physical location..
When true, this resource does not appear on the booking calendar view..
When true, the resource is archived and hidden from all views. It cannot be booked..
When true, bookings for this resource use the location’s shared Zoom account to create virtual meetings..
Zoom user ID used to host virtual meetings when UseSharedZoomAccount is false..
Timestamp of the last cleaning event for this resource..
Comma-separated string of linked resource IDs (read-only alternative view of LinkedResources)..
When true, only contacts (non-member customers) can book this resource..
When true, only active members (coworkers with a plan) can book this resource..
When true, only coworkers invoiced by this specific location can book this resource..
Last value reported by an IoT occupancy sensor attached to this resource (read-only)..
Whether the IoT sensor currently reports this resource as occupied (read-only)..
BookingAvailabilityExceptions
Booking Availability Exceptions.
Cancellation Fee Product Id.
CancellationFeeProductName
Name of the cancellation fee product (read-only, resolved from CancellationFeeProductId)..
When true, a fee is charged for late cancellations (past the LateCancellationLimit)..
How the cancellation fee is calculated: Absolute (fixed amount) or Percentage (of booking cost).. See eCancellationFeeType enum values: 0 = None, 1 = Absolute, 2 = Percentage.
Fixed cancellation fee amount. Used when CancellationFeeType is Absolute..
CancellationFeePercentage
Cancellation fee as a percentage of the booking cost. Used when CancellationFeeType is Percentage..
RepeatBookingQuantityLimit
Maximum number of occurrences allowed when creating a recurring booking for this resource..
RepeatBookingPeriodLimitInMonths
Maximum time span (in months) over which a recurring booking series can extend..
Unique record identifier.
Date and time the record was created (ISO 8601).
Date and time the record was last updated (ISO 8601).
Email of the user who last updated this record.
Whether the record was recently created.
External system identifier.
{
"BusinessId": 0,
"BusinessName": null,
"Name": "",
"SystemResourceType": 0,
"ResourceTypeId": 0,
"ResourceTypeName": null,
"Description": null,
"PictureFileName": null,
"NewPictureUrl": null,
"ClearPictureFile": null,
"EmailConfirmationContent": null,
"Visible": false,
"RequiresConfirmation": false,
"DisplayOrder": 0,
"GroupName": null,
"Projector": false,
"Internet": false,
"ConferencePhone": false,
"StandardPhone": false,
"WhiteBoard": false,
"LargeDisplay": false,
"Catering": false,
"TeaAndCoffee": false,
"Drinks": false,
"SecurityLock": false,
"CCTV": false,
"VoiceRecorder": false,
"AirConditioning": false,
"Heating": false,
"NaturalLight": false,
"StandingDesk": false,
"QuietZone": false,
"WirelessCharger": false,
"PrivacyScreen": false,
"Soundproof": false,
"VideoConferencing": false,
"DualDisplayScreen": false,
"DisplayScreen": false,
"WirelessPresentation": false,
"PaSystem": false,
"DesktopMonitor": false,
"FlipChart": false,
"SecureStorage": false,
"AllowMultipleBookings": false,
"Allocation": null,
"LimitVisitorsToAllocation": false,
"BookInAdvanceLimit": null,
"LateBookingLimit": null,
"LateCancellationLimit": null,
"IntervalLimit": null,
"NoReturnPolicy": null,
"NoReturnPolicyAllResources": null,
"NoReturnPolicyAllUsers": null,
"MaxBookingLength": null,
"MinBookingLength": null,
"Tariffs": [],
"Teams": [],
"Shifts": null,
"LinkedResources": [],
"GoogleCalendarId": null,
"KisiGroupId": null,
"AccessControlGroupId": null,
"AccessControlGroupIds": null,
"Longitude": null,
"Latitude": null,
"HideInCalendar": false,
"Archived": false,
"UseSharedZoomAccount": false,
"ZoomAccessToken": null,
"ZoomRefreshToken": null,
"ZoomUserId": null,
"LastCleanedAt": null,
"Office365CalendarId": null,
"LinkedResourceIds": null,
"OnlyForContacts": false,
"OnlyForMembers": false,
"OnlyForInvoicingBusiness": false,
"SensorLastValue": null,
"IsSensorOccupied": false,
"BookingAvailabilityExceptions": [],
"CancellationFeeProductId": null,
"CancellationFeeProductName": null,
"ChargeCancellationFee": false,
"CancellationFeeType": 0,
"CancellationFeeAmount": null,
"CancellationFeePercentage": null,
"RepeatBookingQuantityLimit": null,
"RepeatBookingPeriodLimitInMonths": null,
"Id": 87654321,
"UpdatedOn": "2025-01-15T10:30:00Z",
"CreatedOn": "2025-01-10T08:00:00Z",
"UniqueId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"UpdatedBy": "admin@example.com",
"IsNew": false,
"SystemId": null,
"ToStringText": "Resource Example",
"LocalizationDetails": null,
"CustomFields": null
}