Skip to main content
GET
/
api
/
spaces
/
bookingproducts
{
  "Records": [
    {}
  ],
  "CurrentPage": 123,
  "CurrentPageSize": 123,
  "CurrentOrderField": "<string>",
  "CurrentSortDirection": 123,
  "FirstItem": 123,
  "LastItem": 123,
  "TotalItems": 123,
  "TotalPages": 123,
  "HasNextPage": true,
  "HasPreviousPage": true
}
A BookingProduct links a Product to a Booking. Only products that are associated with the resource being booked (via ResourceProduct) can be used. For example, if a meeting room resource has a “Catering” product linked through ResourceProduct, that product can be added to bookings for that room as a BookingProduct.

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 BookingProduct-List role.

Query Parameters

Pagination & Sorting

page
integer
default:"1"
The page number to retrieve.
size
integer
default:"25"
The number of records per page.
orderBy
string
The property name to sort results by (e.g. Name, CreatedOn).
dir
integer
Sort direction. 1 for ascending, -1 for descending.

Filters

BookingProduct_Booking
integer
Filter by Booking Id.
BookingProduct_Product
integer
Filter by Product Id.
BookingProduct_Product_Name
string
Filter by the name of the linked product.
BookingProduct_Product_Price
number
Filter by the unit price of the linked product.
BookingProduct_Product_Currency_Code
string
Filter by the currency code of the product price.
BookingProduct_InvoiceInMinutes
boolean
Filter by whether to invoice this product based on the booking duration in minutes.
BookingProduct_Quantity
integer
Filter by the number of units of this product to include in the booking.
BookingProduct_MrmReminded
boolean
Filter by Mrm Reminded.

Range Filters

from_BookingProduct_ProductPrice
number
Filter by the unit price of the linked product greater than or equal to this value.
to_BookingProduct_ProductPrice
number
Filter by the unit price of the linked product less than or equal to this value.
from_BookingProduct_Quantity
integer
Filter by the number of units of this product to include in the booking greater than or equal to this value.
to_BookingProduct_Quantity
integer
Filter by the number of units of this product to include in the booking less than or equal to this value.
from_BookingProduct_CreatedOn
string
Filter records created on or after this date. Format: YYYY-MM-DDTHH:mm.
to_BookingProduct_CreatedOn
string
Filter records created on or before this date. Format: YYYY-MM-DDTHH:mm.
from_BookingProduct_UpdatedOn
string
Filter records updated on or after this date. Format: YYYY-MM-DDTHH:mm.
to_BookingProduct_UpdatedOn
string
Filter records updated on or before this date. Format: YYYY-MM-DDTHH:mm.

Code Examples

Simple listing

curl -X GET \
  "https://spaces.nexudus.com/api/spaces/bookingproducts?page=1&size=15&orderBy=CreatedOn&dir=1" \
  -H "Authorization: Bearer YOUR_TOKEN"

Filtering by CreatedOn

curl -X GET \
  "https://spaces.nexudus.com/api/spaces/bookingproducts?BookingProduct_CreatedOn=example-value&orderBy=CreatedOn&dir=1" \
  -H "Authorization: Bearer YOUR_TOKEN"

Range filters

curl -X GET \
  "https://spaces.nexudus.com/api/spaces/bookingproducts?from_BookingProduct_UpdatedOn=2025-01-01T00:00&to_BookingProduct_UpdatedOn=2025-12-31T23:59&orderBy=UpdatedOn&dir=-1" \
  -H "Authorization: Bearer YOUR_TOKEN"

Response

200

Records
BookingProduct[]
The list of BookingProduct records matching the query. See the Get one BookingProduct endpoint for the full list of properties returned for each record.
Partial records — The listing endpoint returns a summary representation of each BookingProduct. The following fields are not included in the Records[] response: BookingId, InvoiceInMinutes.To get all fields, fetch the full record using the Get one BookingProduct endpoint.Important for updates: When updating a record via PUT, always retrieve the full record with a GET request first, apply your changes to that complete data, and then send the updated record. Do not use data from a listing response as the base for a PUT request, as missing fields may be unintentionally cleared.
CurrentPage
integer
Current page number.
CurrentPageSize
integer
Number of records per page.
CurrentOrderField
string
The field used for sorting.
CurrentSortDirection
integer
The sort direction (1 = ascending, -1 = descending).
FirstItem
integer
Index of the first item on the current page.
LastItem
integer
Index of the last item on the current page.
TotalItems
integer
Total number of matching records across all pages.
TotalPages
integer
Total number of pages.
HasNextPage
boolean
Whether there is a next page of results.
HasPreviousPage
boolean
Whether there is a previous page of results.
Example Response
{
  "Records": [
    {
      "BookingId": 0,
      "ProductId": 0,
      "ProductName": null,
      "ProductPrice": 0,
      "ProductCurrencyCode": null,
      "InvoiceInMinutes": false,
      "Quantity": 0,
      "MrmReminded": false,
      "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": "BookingProduct Example",
      "LocalizationDetails": null,
      "CustomFields": null
    }
  ],
  "CurrentPageSize": 15,
  "CurrentPage": 1,
  "CurrentOrderField": "CreatedOn",
  "CurrentSortDirection": 1,
  "FirstItem": 1,
  "HasNextPage": false,
  "HasPreviousPage": false,
  "LastItem": 1,
  "PageNumber": 1,
  "PageSize": 15,
  "TotalItems": 1,
  "TotalPages": 1
}