> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nexudus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Booking Details

> Returns the full details of a single booking by its numeric ID.

# Get Booking Details

Returns the complete details of a specific booking, including resource, time range, and pricing information.

## Authentication

Requires a valid customer bearer token.

## Path Parameters

<ParamField path="id" type="number" required>
  Numeric identifier of the booking.
</ParamField>

## Query Parameters

<ParamField query="_shape" type="string">
  Comma-separated list of field paths to include in the response. When provided, only the
  specified fields are returned — useful for reducing payload size. Supports nested paths
  using dot notation. Example: `_shape=Booking.ResourceName,Booking.FromTime,Booking.ToTime,Resource.Name`.
</ParamField>

## Response

Returns a `Booking` object with the following fields:

#### Identity

| Field           | Type      | Description                       |
| --------------- | --------- | --------------------------------- |
| `Id`            | `number`  | Unique identifier for the booking |
| `UniqueId`      | `string`  | GUID identifier                   |
| `BookingNumber` | `number?` | Sequential booking number         |

#### Resource

| Field                        | Type       | Description                              |
| ---------------------------- | ---------- | ---------------------------------------- |
| `Resource`                   | `Resource` | Full resource object (nested)            |
| `ResourceId`                 | `number`   | Resource identifier                      |
| `ResourceName`               | `string`   | Display name of the booked resource      |
| `ResourceTypeId`             | `number`   | Resource type identifier                 |
| `ResourceTypeName`           | `string`   | Resource type name                       |
| `ResourceBusinessId`         | `number`   | Business identifier for the resource     |
| `ResourceBusinessName`       | `string`   | Business name for the resource           |
| `ResourceBusinessWebAddress` | `string`   | Business web address                     |
| `ResourceUpdatedOnUtc`       | `string?`  | When the resource was last updated (UTC) |

#### Floor Plan

| Field               | Type            | Description                     |
| ------------------- | --------------- | ------------------------------- |
| `FloorPlanDesk`     | `FloorPlanDesk` | Floor plan desk object (nested) |
| `FloorPlanDeskId`   | `number?`       | Floor plan desk identifier      |
| `FloorPlanDeskName` | `string`        | Floor plan desk name            |

#### Schedule

| Field            | Type      | Description                      |
| ---------------- | --------- | -------------------------------- |
| `FromTime`       | `string`  | Booking start time (local)       |
| `ToTime`         | `string`  | Booking end time (local)         |
| `FromTimeUtc`    | `string`  | Booking start time (UTC)         |
| `ToTimeUtc`      | `string`  | Booking end time (UTC)           |
| `UtcFromTime`    | `string`  | Alias for FromTimeUtc            |
| `UtcToTime`      | `string`  | Alias for ToTimeUtc              |
| `CheckedInAt`    | `string?` | When the user checked in (local) |
| `UtcCheckedInAt` | `string?` | When the user checked in (UTC)   |

#### Coworker

| Field        | Type       | Description                            |
| ------------ | ---------- | -------------------------------------- |
| `Coworker`   | `Coworker` | Coworker who made the booking (nested) |
| `CoworkerId` | `number`   | Coworker identifier                    |

#### Status & Billing

| Field                       | Type      | Description                            |
| --------------------------- | --------- | -------------------------------------- |
| `Tentative`                 | `boolean` | Whether the booking is tentative       |
| `IsCancelled`               | `boolean` | Whether the booking has been cancelled |
| `Recurring`                 | `boolean` | Whether this is a recurring booking    |
| `CancelIfNotPaid`           | `boolean` | Auto-cancel if invoice not paid        |
| `Invoiced`                  | `boolean` | Whether the booking has been invoiced  |
| `CoworkerInvoiceId`         | `number?` | Associated invoice identifier          |
| `CoworkerInvoicePaid`       | `boolean` | Whether the invoice has been paid      |
| `CoworkerInvoiceNumber`     | `string`  | Invoice number                         |
| `CoworkerExtraServicePrice` | `number?` | Price of extra services                |

#### Other

| Field               | Type            | Description                    |
| ------------------- | --------------- | ------------------------------ |
| `Notes`             | `string`        | Booking notes                  |
| `ZoomData`          | `string`        | Zoom meeting data              |
| `IncludeZoomInvite` | `boolean`       | Whether to include Zoom invite |
| `CustomFields`      | `CustomField[]` | Array of custom field values   |

#### Timestamps (from base)

| Field          | Type     | Description                          |
| -------------- | -------- | ------------------------------------ |
| `CreatedOn`    | `string` | Record creation timestamp (local)    |
| `UpdatedOn`    | `string` | Record last-update timestamp (local) |
| `CreatedOnUtc` | `string` | Record creation timestamp (UTC)      |
| `UpdatedOnUtc` | `string` | Record last-update timestamp (UTC)   |

## Examples

### Fetch booking details

```http theme={null}
GET /api/public/bookings/1234
Authorization: Bearer {token}
```

## TypeScript Integration

```typescript theme={null}
import endpoints from '@/api/endpoints'

const { resource: booking } = useTypedData(httpClient, endpoints.bookings.one(1234))
```
