List desks, optionally filtered to a free time window

GET
/desks

Paginated (meta returned). Availability filter: startDateTime plus EXACTLY ONE of timePeriod (preset morning/afternoon/allDay window) or endDateTime (explicit window) — mirrors the POST /meetings desk time rules. Unlike meeting-room availability search, desks with a conflicting booking are removed from the result entirely (meta.total reflects the free count); there is no unavailableReason flag on desks — every desk returned is bookable for the window. A desk whose window would run into a booking's cleaning time (the property's default; see MeetingRoom.cleanupMinutes) is removed too.

Authorization

bearerAuth
AuthorizationBearer <token>

Access token from POST /auth/accessToken

In: header

Query Parameters

projectId?string
brandId?string
zoneId?string
floorId?string
locationId?string
ids?array<string>
name?string
email?string
status?string

Value in

  • "active"
  • "inactive"
  • "in-used"
  • "reserved"
  • "suspended"
statuses?array<>
startDateTime?string

Availability window start

Formatdate-time
endDateTime?string

Availability window end (explicit form — exactly one of endDateTime / timePeriod)

Formatdate-time
timePeriod?string

Preset window form — exactly one of endDateTime / timePeriod

Value in

  • "morning"
  • "afternoon"
  • "allDay"
limit?integer

Page size

Range0 <= value <= 3000
offset?integer

Items to skip

Range0 <= value
Default0

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/desks"
{  "code": "KS000",  "success": true,  "message": "string",  "data": [    {      "_id": "string",      "name": "string",      "index": 0,      "email": "string",      "status": "active",      "isPublic": true,      "brandId": "string",      "projectId": "string",      "zoneId": "string",      "floorId": "string",      "capacity": 0,      "facilities": [        "string"      ],      "pictureUrls": [        "string"      ],      "chargeRate": {        "perHour": 0,        "perDay": 0      },      "config": {        "dayConfig": {          "Mon": {            "availableTime": {              "start": "09:00:00",              "end": "18:00:00"            },            "breakTimes": [              {                "start": "09:00:00",                "end": "18:00:00"              }            ]          },          "Tue": {            "availableTime": {              "start": "09:00:00",              "end": "18:00:00"            },            "breakTimes": [              {                "start": "09:00:00",                "end": "18:00:00"              }            ]          },          "Wed": {            "availableTime": {              "start": "09:00:00",              "end": "18:00:00"            },            "breakTimes": [              {                "start": "09:00:00",                "end": "18:00:00"              }            ]          },          "Thu": {            "availableTime": {              "start": "09:00:00",              "end": "18:00:00"            },            "breakTimes": [              {                "start": "09:00:00",                "end": "18:00:00"              }            ]          },          "Fri": {            "availableTime": {              "start": "09:00:00",              "end": "18:00:00"            },            "breakTimes": [              {                "start": "09:00:00",                "end": "18:00:00"              }            ]          },          "Sat": {            "availableTime": {              "start": "09:00:00",              "end": "18:00:00"            },            "breakTimes": [              {                "start": "09:00:00",                "end": "18:00:00"              }            ]          },          "Sun": {            "availableTime": {              "start": "09:00:00",              "end": "18:00:00"            },            "breakTimes": [              {                "start": "09:00:00",                "end": "18:00:00"              }            ]          }        },        "start": "string",        "end": "string",        "minimumLeadTime": {          "minutes": 0,          "hours": 0,          "days": 0        },        "maxAdvanceBookingDays": 0,        "maxDurationMinutes": 0,        "bookMultipleDayRoom": true,        "meetingConfig": {          "preStartMinutes": 0,          "postStartWarnMinutes": 0,          "postStartExpireMinutes": 0,          "preEndMinutes": 0        }      }    }  ],  "meta": {    "limit": 0,    "offset": 0,    "total": 0  }}