Skip to main content
GET
/
api
/
spaces
/
resourceaccessrules
/
{id}
{
  "ResourceId": 123,
  "Name": "<string>",
  "Active": true,
  "OnlyForContacts": true,
  "ApplyRuleFrom": "<string>",
  "ApplyRuleTo": "<string>",
  "BookInAdvanceLimit": 123,
  "LateBookingLimit": 123,
  "LateCancellationLimit": 123,
  "IntervalLimit": 123,
  "MaxBookingLength": 123,
  "MinBookingLength": 123,
  "NoReturnPolicy": 123,
  "NoReturnPolicyAllResources": 123,
  "NoReturnPolicyAllUsers": 123,
  "RejectWithMessage": "<string>",
  "OnlyForMembers": true,
  "Tariffs": [
    123
  ],
  "AllowedTariffs": [
    123
  ],
  "Members": [
    123
  ],
  "Teams": [
    123
  ],
  "AllowedTeams": [
    123
  ],
  "EventCategories": [
    123
  ],
  "Courses": [
    123
  ],
  "EvaluationOrder": 123,
  "StopEvaluationIfRuleIsMet": true,
  "CancellationFeeProductId": 123,
  "CancellationFeeProductName": "<string>",
  "ChargeCancellationFee": true,
  "CancellationFeeType": 123,
  "CancellationFeeAmount": 123,
  "CancellationFeePercentage": 123,
  "RepeatBookingQuantityLimit": 123,
  "RepeatBookingPeriodLimitInMonths": 123,
  "Id": 123,
  "UniqueId": "<string>",
  "CreatedOn": "<string>",
  "UpdatedOn": "<string>",
  "UpdatedBy": "<string>",
  "IsNew": true,
  "SystemId": "<string>"
}
A ResourceAccessRule defines additional booking policies and restrictions for a Resource, scoped by date/time, customer, team, plan, or other criteria. Rules are evaluated in EvaluationOrder and can optionally stop further evaluation when matched (StopEvaluationIfRuleIsMet). The booking-policy fields (BookInAdvanceLimit, LateBookingLimit, LateCancellationLimit, IntervalLimit, MaxBookingLength, MinBookingLength, NoReturnPolicy*, cancellation-fee fields, and repeat-booking limits) mirror those on Resource and carry the same semantics — they override the resource-level defaults when the rule matches.

Scope: who the rule applies to

  • OnlyForMembers / OnlyForContacts — quick toggles to limit the rule to members or contacts.
  • Tariffs — pricing plans this rule applies to. When set, the rule only fires for customers on one of these plans.
  • Teams — teams this rule applies to. When set, the rule only fires for members of one of these teams.
  • Courses — the rule applies only to customers who have completed one of these courses.
  • EventCategories — the rule applies only to customers who have attended (checked in to) an event in one of these categories.

Scope: who is allowed to book when the rule fires

  • AllowedTariffs — only customers on one of these plans are allowed to book when the rule applies to them.
  • AllowedTeams — only members of one of these teams are allowed to book when the rule applies to them.

List mutation helpers

For each list field (Tariffs, AllowedTariffs, Teams, AllowedTeams, Members, EventCategories, Courses) there are Added* and Removed* variants that append or remove entries on update without replacing the full list.

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 ResourceAccessRule-Read role.

Path Parameters

id
integer
required
The Id of the ResourceAccessRule record to retrieve.

Code Examples

curl -X GET \
  "https://spaces.nexudus.com/api/spaces/resourceaccessrules/87654321" \
  -H "Authorization: Bearer YOUR_TOKEN"

Response

200

ResourceId
integer
Resource Id.
Name
string
Rule name.
Active
boolean
Whether this rule is currently active and evaluated during booking..
OnlyForContacts
boolean
When true, this rule applies only to contacts (non-member customers)..
ApplyRuleFrom
string
Date from which this rule starts being evaluated. Null means no start-date restriction..
ApplyRuleTo
string
Date after which this rule stops being evaluated. Null means no end-date restriction..
BookInAdvanceLimit
number
Maximum number of days in advance a booking can be made. Null means no limit..
LateBookingLimit
number
Minimum lead time (in minutes) required before a booking can start. Prevents last-minute bookings..
LateCancellationLimit
integer
Cut-off in minutes before the booking start time. Cancellations after this point are considered late and may incur a fee..
IntervalLimit
integer
Minimum interval (in minutes) between consecutive bookings on this resource, used as a buffer for setup or cleaning..
MaxBookingLength
integer
Maximum allowed duration for a single booking, in minutes..
MinBookingLength
integer
Minimum allowed duration for a single booking, in minutes..
NoReturnPolicy
integer
Cooldown in minutes: prevents the same user from booking this specific resource again within this window after their last booking ends..
NoReturnPolicyAllResources
integer
Cooldown in minutes: prevents the same user from booking any resource after booking this one, for the specified window..
NoReturnPolicyAllUsers
integer
Cooldown in minutes: prevents any user from booking this resource within the specified window after the previous booking ends..
RejectWithMessage
string
Message shown to the user when their booking is rejected by this rule..
OnlyForMembers
boolean
When true, this rule applies only to active members (coworkers with a plan)..
Tariffs
integer[]
Tariffs.
AllowedTariffs
integer[]
Allowed Tariffs.
Members
integer[]
Members.
Teams
integer[]
Teams.
AllowedTeams
integer[]
Allowed Teams.
EventCategories
integer[]
Event Categories.
Courses
integer[]
Courses.
EvaluationOrder
integer
Order in which this rule is evaluated relative to other rules on the same resource. Lower values are evaluated first..
StopEvaluationIfRuleIsMet
boolean
When true, no further rules are evaluated after this one matches..
CancellationFeeProductId
integer
Cancellation Fee Product Id.
CancellationFeeProductName
string
Name of the cancellation fee product (read-only, resolved from CancellationFeeProductId)..
ChargeCancellationFee
boolean
When true, a fee is charged for late cancellations (past the LateCancellationLimit)..
CancellationFeeType
integer
How the cancellation fee is calculated: Absolute (fixed amount) or Percentage (of booking cost)..
CancellationFeeAmount
number
Fixed cancellation fee amount. Used when CancellationFeeType is Absolute..
CancellationFeePercentage
number
Cancellation fee as a percentage of the booking cost. Used when CancellationFeeType is Percentage..
RepeatBookingQuantityLimit
integer
Maximum number of occurrences allowed when creating a recurring booking under this rule..
RepeatBookingPeriodLimitInMonths
integer
Maximum time span (in months) over which a recurring booking series can extend under this rule..
Id
integer
Unique record identifier.
UniqueId
string
UUID of the record.
CreatedOn
string
Date and time the record was created (ISO 8601).
UpdatedOn
string
Date and time the record was last updated (ISO 8601).
UpdatedBy
string
Email of the user who last updated this record.
IsNew
boolean
Whether the record was recently created.
SystemId
string
External system identifier.
Example Response
{
  "ResourceId": 0,
  "Name": "",
  "Active": false,
  "OnlyForContacts": false,
  "ApplyRuleFrom": null,
  "ApplyRuleTo": null,
  "BookInAdvanceLimit": null,
  "LateBookingLimit": null,
  "LateCancellationLimit": null,
  "IntervalLimit": null,
  "MaxBookingLength": null,
  "MinBookingLength": null,
  "NoReturnPolicy": null,
  "NoReturnPolicyAllResources": null,
  "NoReturnPolicyAllUsers": null,
  "RejectWithMessage": null,
  "OnlyForMembers": false,
  "Tariffs": [],
  "AllowedTariffs": [],
  "Members": [],
  "Teams": [],
  "AllowedTeams": [],
  "EventCategories": [],
  "Courses": [],
  "EvaluationOrder": 0,
  "StopEvaluationIfRuleIsMet": false,
  "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": "ResourceAccessRule Example",
  "LocalizationDetails": null,
  "CustomFields": null
}