Bookings
Get multiple Bookings
Retrieve multiple Booking records by their Ids in a single request.
GET
/
api
/
spaces
/
bookings
/
?id=[
{id1}
,
{id2}
,
{id3}
]
Get multiple Bookings
curl --request GET \
--url 'https://spaces.nexudus.com/api/spaces/bookings/?id=%5B{id1}%2C{id2}%2C{id3}%5D' \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://spaces.nexudus.com/api/spaces/bookings/?id=%5B{id1}%2C{id2}%2C{id3}%5D"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://spaces.nexudus.com/api/spaces/bookings/?id=%5B{id1}%2C{id2}%2C{id3}%5D', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));Fetch several Booking records in a single request by passing their Ids as a comma-separated list enclosed in square brackets.
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 Booking-Read role.Query Parameters
integer[]
required
A comma-separated list of Booking Ids enclosed in square brackets, e.g.
[123,456,789].Code Examples
curl -X GET \
"https://spaces.nexudus.com/api/spaces/bookings/?id=[87654321,87654322,87654323]" \
-H "Authorization: Bearer YOUR_TOKEN"
const response = await fetch(
'https://spaces.nexudus.com/api/spaces/bookings/?id=[87654321,87654322,87654323]',
{
headers: {
'Authorization': 'Bearer YOUR_TOKEN'
}
}
);
const records = await response.json();
import requests
response = requests.get(
'https://spaces.nexudus.com/api/spaces/bookings/',
params={
'id': '[87654321,87654322,87654323]'
},
headers={
'Authorization': 'Bearer YOUR_TOKEN'
}
)
records = response.json()
Response
200
Returns an array of Booking records. Each record has the same structure as the response from the Get one Booking endpoint.Partial records — This endpoint returns a summary representation of each Booking. The following fields are not populated in the response:
InternalNotes, ChargeNow, InvoiceNow, InvoiceThisCoworker, DoNotUseBookingCredit, RepeatBooking, Repeats, WhichBookingsToUpdate, RepeatEvery, RepeatUntil, RepeatOnMondays, RepeatOnTuesdays, RepeatOnWednesdays, RepeatOnThursdays, RepeatOnFridays, RepeatOnSaturdays, RepeatOnSundays, OverridePrice, IncludeZoomInvite.To get all fields, fetch the full record using the Get one Booking 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 this endpoint as the base for a PUT request, as missing fields may be unintentionally cleared.Example Response
[
{
"ResourceId": 0,
"ResourceName": null,
"ResourceAllocation": null,
"ResourceHideInCalendar": null,
"ResourceNoReturnPolicy": null,
"ResourceNoReturnPolicyAllResources": null,
"ResourceNoReturnPolicyAllUsers": null,
"ResourceResourceTypeId": null,
"ResourceResourceTypeName": null,
"FloorPlanDeskId": null,
"FloorPlanDeskName": null,
"CoworkerId": null,
"CoworkerCoworkerType": null,
"CoworkerFullName": null,
"CoworkerMobilePhone": null,
"CoworkerLandLine": null,
"CoworkerBillingName": null,
"CoworkerCompanyName": null,
"CoworkerTeamNames": null,
"ExtraServiceId": null,
"ExtraServiceName": null,
"FromTime": "2025-01-15T10:30:00Z",
"ToTime": "2025-01-15T10:30:00Z",
"Notes": null,
"PurchaseOrder": null,
"DiscountCode": null,
"LastNotificationTime": null,
"GoogleCalendarId": null,
"GoogleEventId": null,
"Office365EventId": null,
"PublicGoogleEventId": null,
"Tentative": false,
"Online": false,
"TeamsAtTheTimeOfBooking": null,
"TariffAtTheTimeOfBooking": null,
"RepeatSeriesUniqueId": null,
"Reminded": false,
"MrmReminded": false,
"Invoiced": false,
"InvoiceDate": null,
"BookingNumber": null,
"KisiKeyId": null,
"StartScheduledJobId": null,
"EndScheduledJobId": null,
"Billed": false,
"FromTimeLocal": null,
"ToTimeLocal": null,
"InvoiceDateLocal": null,
"CoworkerInvoiceId": null,
"CoworkerInvoiceNumber": null,
"CoworkerInvoicePaid": false,
"CoworkerInvoiceDraft": false,
"CoworkerInvoiceVoid": false,
"CoworkerInvoiceCreditNote": false,
"CoworkerExtraServiceIds": null,
"CoworkerExtraServicePrice": null,
"CoworkerExtraServiceCurrencyCode": null,
"CoworkerExtraServiceChargePeriod": null,
"CoworkerExtraServiceTotalUses": null,
"ZoomEventData": null,
"CheckedInAt": null,
"CancelIfNotPaid": false,
"CancelIfNotCheckedIn": false,
"MaxOccupancy": null,
"LastMinutePriceAdjustment": null,
"DynamicPriceAdjustment": null,
"PriceFactorLastMinute": null,
"PriceFactorDemand": null,
"Office365AdminEventId": 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": "Booking Example",
"LocalizationDetails": null,
"CustomFields": null
}
]
Was this page helpful?
⌘I
Get multiple Bookings
curl --request GET \
--url 'https://spaces.nexudus.com/api/spaces/bookings/?id=%5B{id1}%2C{id2}%2C{id3}%5D' \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://spaces.nexudus.com/api/spaces/bookings/?id=%5B{id1}%2C{id2}%2C{id3}%5D"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://spaces.nexudus.com/api/spaces/bookings/?id=%5B{id1}%2C{id2}%2C{id3}%5D', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));