# Public API ## Docs - [Welcome to the deskbird Public API](https://developer.deskbird.com/welcome-to-the-deskbird-public-api-857686m0.md): - [Users](https://developer.deskbird.com/users-3032919f0.md): - [Bookings](https://developer.deskbird.com/bookings-3032920f0.md): - [Groups](https://developer.deskbird.com/groups-3032921f0.md): - [Resources](https://developer.deskbird.com/resources-3032922f0.md): ## API Docs - Users [Lists company users](https://developer.deskbird.com/lists-company-users-14329051e0.md): Retrieves a paginated list of company users. Supports filtering by providers, statuses, user group IDs, primary office IDs, and emails. Optional include parameter for additional user data (externalId, provider, settings, userGroups, officeRoles). Returns user details including user ID, name, email, role, primary office ID, status, and profile image URL. Pagination is supported through offset and limit parameters. - Users [Retrieves a single company user](https://developer.deskbird.com/retrieves-a-single-company-user-14329052e0.md): Returns a single company user by user ID (path parameter, numeric or UUID). Optionally accepts an include query parameter to return additional user data (externalId, provider, settings, userGroups, officeRoles). Returns user details including user ID, name, email, role, primary office ID, status, and profile image URL. - Bookings [Lists company bookings](https://developer.deskbird.com/lists-company-bookings-14329053e0.md): Retrieves a paginated list of resource bookings for the company. Returns desk bookings, parking bookings, and other resource type bookings (excludes meeting room bookings). Supports filtering by date ranges (startDate, endDate, updatedAt), booking IDs, office IDs, resource IDs, user IDs, zone IDs, and booking statuses. Returns bookings with full details including user information, resource details, check-in status, and booking history. - Bookings [Creates a new resource booking](https://developer.deskbird.com/creates-a-new-resource-booking-18977546e0.md): Creates a new booking for a specified resource. Requires user ID, resource ID, start time, end time, and anonymous booking flag. Optionally supports guest bookings by providing guest information (first name, last name, email). The booking is created by the API token creator and will be associated with the company of the authenticated user. - Bookings [Gets a single company booking](https://developer.deskbird.com/gets-a-single-company-booking-14329054e0.md): Retrieves detailed information about a specific booking by its ID. Returns complete booking data including user information (if not anonymized), resource details, guest information (if applicable), check-in status, booking history, and all booking metadata. - Bookings [Updates an existing booking](https://developer.deskbird.com/updates-an-existing-booking-18977547e0.md): Updates an existing booking's details. Allows modification of user assignment, start time, end time, anonymous booking flag, and resource assignment. All fields are optional - only provided fields will be updated. The update is performed by the API token creator. - Bookings [Cancels a booking](https://developer.deskbird.com/cancels-a-booking-18977548e0.md): Cancels an existing booking, marking it as cancelled in the system. The booking status will be updated to 'cancelled' and the cancellation is recorded with the API token creator as the cancellation source. Returns no content on success. - Bookings [Checks in to a booking](https://developer.deskbird.com/checks-in-to-a-booking-18977549e0.md): Records a check-in for an existing booking. Updates the booking's check-in status to 'checkedIn'. For QR code check-ins, the resourceId must be provided in the request body to verify the check-in location. The check-in is performed by the API token creator. Returns no content on success. - Bookings [Releases a booking early](https://developer.deskbird.com/releases-a-booking-early-18977550e0.md): Releases a booking before its scheduled end time, marking the early release time. This allows the resource to become available for other bookings earlier than originally scheduled. The early release is performed by the API token creator. Returns no content on success. - Groups [Lists company user groups](https://developer.deskbird.com/lists-company-user-groups-14329055e0.md): Retrieves a paginated list of company user groups. Pagination is supported through offset and limit parameters. - Groups [Retrieves a single company user group](https://developer.deskbird.com/retrieves-a-single-company-user-group-14329056e0.md): Returns a single company user group by group ID (path parameter, numeric or UUID). - Resources [Gets a resource by ID](https://developer.deskbird.com/gets-a-resource-by-id-20972855e0.md): Retrieves detailed information about a specific resource by its ID. Returns complete resource data including resource ID, type (flexDesk, parking, or other), capacity, name, description, status (active or inactive), zone ID, office ID, access information (shared or dedicated with user details), and creation/update timestamps. Returns 404 if the resource is not found or does not belong to the company. - Resources [Lists company resources](https://developer.deskbird.com/lists-company-resources-14329057e0.md): Retrieves a paginated list of all resources available in the company. Supports comprehensive filtering by office ID, resource type (flexDesk, parking, other), zone ID, resource IDs (comma-separated), and name (exact match or case-insensitive pattern matching using 'exact:' or 'ilike:' prefixes). Returns resource details including access information (shared or dedicated), capacity, status, and location details. Results are paginated using limit and offset parameters. - Offices [Lists company offices](https://developer.deskbird.com/lists-company-offices-16699862e0.md): Retrieves a list of all offices associated with the company. Supports optional filtering by office IDs using a comma-separated list. Returns office details including office ID, name, and complete address information (street, city, postal code, country, coordinates, timezone, and geolocation radius for check-in). - Offices [Checks a user into an office](https://developer.deskbird.com/checks-a-user-into-an-office-16699863e0.md): Records a user's check-in to a specific office location. This endpoint is used to track when a user arrives at an office. The check-in is associated with the specified office ID and user ID. Additionally, this action automatically checks in all existing resource bookings (desk, parking, and other resource types) for the user in that office. Meeting room bookings are not automatically checked in. Returns no content on successful check-in. - Scheduling [Lists company scheduling statuses](https://developer.deskbird.com/lists-company-scheduling-statuses-20946500e0.md): Retrieves a paginated list of scheduling statuses for the company within a specified date range. Supports filtering by user IDs (comma-separated), office IDs (comma-separated), and scheduling option IDs (comma-separated). Returns scheduling entries with user information (if not anonymized), office details, scheduling option details, duration (full_day, morning, afternoon), external status information, and calendar sync data. Results are paginated using limit and offset parameters. Date format is YYYY-MM-DD. - Scheduling [Deletes scheduling statuses by IDs](https://developer.deskbird.com/deletes-scheduling-statuses-by-ids-20946501e0.md): Deletes one or more scheduling statuses by their IDs. The status IDs must be provided as a comma-separated list. Past statuses (statuses for dates that have already passed) and external statuses (statuses created by HRIS sync or other external systems) cannot be deleted and will be skipped. Only future, non-external statuses can be removed. Returns no content on success. - Scheduling [Adds new scheduling statuses for a user](https://developer.deskbird.com/adds-new-scheduling-statuses-for-a-user-20946502e0.md): Creates one or more new scheduling statuses for a specified user. Each status requires a day (YYYY-MM-DD format), option ID, and duration (full_day, morning, or afternoon). For half-day durations (morning or afternoon), the SCHEDULING_HALF_DAY feature must be enabled for the company. Optionally supports office ID for office-related statuses. Returns the created scheduling statuses with complete details including user information, option details, and office information if applicable. - Scheduling Options [Lists company scheduling options](https://developer.deskbird.com/lists-company-scheduling-options-20946503e0.md): Retrieves a list of all scheduling options available for the company. These options define the types of statuses that can be assigned to users (e.g., Office, Mobile work, Absent). Returns option details including ID, name, type, color, display order, primary status (cannot be deleted), active status (inactive options cannot be used for new statuses), and policy rule (how the status counts toward Hybrid Work Policy). Primary options are system-defined and cannot be deleted. - Rooms [Lists company rooms](https://developer.deskbird.com/lists-company-rooms-22431624e0.md): Retrieves a paginated list of all rooms available in the company. Supports optional filtering by office IDs using a comma-separated list of UUIDs. Returns room details including room ID, name, capacity, description, active status, office ID, and timezone. Results are paginated using limit and offset parameters. - Rooms [Gets a single room](https://developer.deskbird.com/gets-a-single-room-22431625e0.md): Retrieves detailed information about a specific room by its ID. Returns complete room data including room ID, name, capacity, description, active status, associated office ID, and timezone. Verifies that the room belongs to the authenticated user's company. - Rooms [Lists room bookings](https://developer.deskbird.com/lists-room-bookings-22431626e0.md): Retrieves a paginated list of bookings for a specific room. Supports filtering by user IDs (comma-separated UUIDs), start time, and end time to retrieve bookings within a specific timeframe. Returns booking details including attendees, duration, check-in status, booking type, and associated user information. Results are paginated using limit and offset parameters. - Rooms [Creates a room booking](https://developer.deskbird.com/creates-a-room-booking-22431627e0.md): Creates a new booking for the specified room. Requires room ID, start time, duration (in seconds), title, description (optional), privacy flag, and optionally a user ID (null for anonymous bookings). Supports adding attendees with their email addresses. Returns the created booking with full details including all booking metadata. - Rooms [Gets a single room booking](https://developer.deskbird.com/gets-a-single-room-booking-22431628e0.md): Retrieves detailed information about a specific room booking by its ID. Returns complete booking data including attendees, duration, start time, title, description, check-in status, booking type (occurrence, exception, or single), privacy status, and associated user information. Verifies that the booking belongs to the authenticated user's company. - Rooms [Updates a room booking](https://developer.deskbird.com/updates-a-room-booking-22431629e0.md): Updates an existing room booking's details. Allows modification of start time, duration, title, description, privacy status, user assignment, and attendees. Private bookings cannot be updated - attempting to update a private booking will result in a 403 Forbidden error. Verifies that the booking belongs to the authenticated user's company before allowing updates. - Rooms [Checks in to a room booking](https://developer.deskbird.com/checks-in-to-a-room-booking-22431630e0.md): Records a check-in for a specific room booking, updating the booking's check-in status. Private bookings cannot be checked into - attempting to check in to a private booking will result in a 403 Forbidden error. Verifies that the booking belongs to the authenticated user's company and is associated with the specified room before allowing check-in. Returns no content on success. - Rooms [Cancels a room booking](https://developer.deskbird.com/cancels-a-room-booking-22431631e0.md): Cancels an existing room booking, removing it from the system. Private bookings cannot be cancelled - attempting to cancel a private booking will result in a 403 Forbidden error. Verifies that the booking belongs to the authenticated user's company before allowing cancellation. Returns no content on success. ## Schemas - [BookingStatus](https://developer.deskbird.com/bookingstatus-5236024d0.md): - [Provider](https://developer.deskbird.com/provider-7204499d0.md): - [ResourceType](https://developer.deskbird.com/resourcetype-5236025d0.md): - [GuestEmbeddedResponse](https://developer.deskbird.com/guestembeddedresponse-5428437d0.md): - [UserStatus](https://developer.deskbird.com/userstatus-7204500d0.md): - [ResourceEmbeddedResponse](https://developer.deskbird.com/resourceembeddedresponse-5428438d0.md): - [UserIncludeOptions](https://developer.deskbird.com/userincludeoptions-7204501d0.md): - [UserEmbeddedResponse](https://developer.deskbird.com/userembeddedresponse-5428439d0.md): - [BookingResponse](https://developer.deskbird.com/bookingresponse-5428440d0.md): - [PaginatedBookingResponse](https://developer.deskbird.com/paginatedbookingresponse-5428441d0.md): - [AddressResponse](https://developer.deskbird.com/addressresponse-6664739d0.md): - [OfficeResponse](https://developer.deskbird.com/officeresponse-6664740d0.md): - [BookingHistoryResponse](https://developer.deskbird.com/bookinghistoryresponse-10385870d0.md): - [ResourceResponse](https://developer.deskbird.com/resourceresponse-5428443d0.md): - [EnvelopedOfficeResponse](https://developer.deskbird.com/envelopedofficeresponse-6664741d0.md): - [PaginatedResourceResponse](https://developer.deskbird.com/paginatedresourceresponse-5428444d0.md): - [CheckUserIntoOfficeBody](https://developer.deskbird.com/checkuserintoofficebody-6664742d0.md): - [CreateBookingGuestDto](https://developer.deskbird.com/createbookingguestdto-7949757d0.md): - [CreateBookingDto](https://developer.deskbird.com/createbookingdto-7949758d0.md): - [UpdateBookingDto](https://developer.deskbird.com/updatebookingdto-7949759d0.md): - [CheckInDto](https://developer.deskbird.com/checkindto-7949760d0.md): - [OpeningHourResponse](https://developer.deskbird.com/openinghourresponse-12581010d0.md): - [OpeningHoursResponse](https://developer.deskbird.com/openinghoursresponse-12581011d0.md): - [SharedResourceAccessInfoResponse](https://developer.deskbird.com/sharedresourceaccessinforesponse-9091897d0.md): - [DedicatedResourceAccessInfoResponse](https://developer.deskbird.com/dedicatedresourceaccessinforesponse-9091898d0.md): - [SchedulingOutput](https://developer.deskbird.com/schedulingoutput-9091899d0.md): - [EquipmentResponse](https://developer.deskbird.com/equipmentresponse-12840952d0.md): - [UserStatusInput](https://developer.deskbird.com/userstatusinput-9091900d0.md): - [AddUserStatusesInput](https://developer.deskbird.com/adduserstatusesinput-9091901d0.md): - [SchedulingOptionOutput](https://developer.deskbird.com/schedulingoptionoutput-9091902d0.md): - [AttendeeResponse](https://developer.deskbird.com/attendeeresponse-10010375d0.md): - [RoomBookingResponse](https://developer.deskbird.com/roombookingresponse-10010376d0.md): - [PaginatedRoomBookingResponse](https://developer.deskbird.com/paginatedroombookingresponse-10010377d0.md): - [RoomBookingDetailedResponse](https://developer.deskbird.com/roombookingdetailedresponse-10010378d0.md): - [AttendeeDto](https://developer.deskbird.com/attendeedto-10010379d0.md): - [RoomResponse](https://developer.deskbird.com/roomresponse-10010380d0.md): - [PaginatedRoomResponse](https://developer.deskbird.com/paginatedroomresponse-10010381d0.md): - [CreateRoomBookingDto](https://developer.deskbird.com/createroombookingdto-10010382d0.md): - [UpdateRoomBookingDto](https://developer.deskbird.com/updateroombookingdto-10010383d0.md):