# Get Booking

Get a booking by its ID.

Endpoint: GET /v1/bookings/{bookingId}
Security: OAuth2

## Path parameters:

  - `bookingId` (string, required)
    The unique identifier of the booking.

## Response 200 fields (application/json):

  - `id` (string, required)
    The unique identifier of the booking.

  - `status` (string, required)
    The lifecycle status of a booking.
- `ACTIVE` — confirmed; the customer is expected to attend.
- `PROCESSING` — being processed; not yet confirmed.
- `MOVED` — moved to a different event; the booking is no longer valid against the original event.
- `CANCELLED` — cancelled; the customer will not attend.
- `CHECKED_IN` — the customer has been checked in.
- `UNKNOWN` — defensive default; should not appear on a correctly configured booking.
    Enum: "ACTIVE", "CANCELLED", "MOVED", "PROCESSING", "CHECKED_IN", "UNKNOWN"

  - `source` (string)
    The system or channel through which the booking was created (for example, an Understory storefront identifier or an external integration name).

  - `created_at` (string, required)
    Timestamp of when the booking was created.

  - `updated_at` (string, required)
    Timestamp of when the booking was last updated.

  - `company_id` (string, required)
    The ID of the company hosting the experience.

  - `experience_id` (string, required)
    The unique identifier of the experience.

  - `event_id` (string, required)
    The unique identifier of the event.

  - `locale` (string, required)
    A lowercase ISO 639-1 language code (e.g. "da"),
optionally followed by a hyphen and an uppercase ISO 3166-1 country code (e.g. "en-US").

  - `customer` (any, required)
    The customer that made the booking.

  - `customer.customer_type` (string, required)
    Enum: "PRIVATE", "COMPANY"

  - `customer.company_name` (string, required)
    The name of the company.

  - `customer.vat_number` (string, required)
    The VAT number of the company.

  - `customer.email` (string, required)
    The email address of the customer.

  - `customer.name` (string)
    The name of the customer.

  - `customer.phone` (string, required)
    The phone number of the customer.

  - `customer.address` (object)
    An address on a booking that already exists. Unlike the address given
when creating one, this reports what was stored, which may be partial.

  - `customer.address.address_lines` (array, required)
    Address lines.
The first line is the primary address line, e.g. street name and number.
The second line is the secondary address line, e.g. apartment number.
Empty when the stored address has no street address.

  - `customer.address.city` (string, required)
    The city of the customer.

  - `customer.address.zip_code` (string, required)
    The postal code of the customer.

  - `customer.address.region` (string)
    The region of the customer.
This can be a state, province, or other administrative region.

  - `customer.address.country` (string, required)
    The country of the customer.

  - `customer.full_name` (string, required)
    The name of the customer.

  - `internal_note` (string)
    Markdown formatted text.
This is a string that contains markdown syntax.

## Response 400 fields (application/json):

  - `code` (string, required)

  - `message` (string, required)

## Response 403 fields (application/json):

  - `code` (string, required)

  - `message` (string, required)

## Response 404 fields (application/json):

  - `code` (string, required)

  - `message` (string, required)

## Response default fields (application/json):

  - `code` (string, required)

  - `message` (string, required)

