---
title: "GET /bookings"
method: GET
path: "/bookings"
tags: ["bookings"]
---

# GET /bookings

`GET /bookings`

Read many bookings

## Query parameters

- `offset` integer
- `limit` integer
- `order_by` string
- `FromLT` string
- `FromGT` string
- `ToLT` string
- `ToGT` string
- `UpdatedLT` string
- `UpdatedGT` string
- `CreatedLT` string
- `CreatedGT` string
- `BookedLT` string
- `BookedGT` string
- `csv-token` string
- `blocking` boolean
- `calendar` boolean
- `owner_id` integer
- `rental_id` integer
- `rental_ids` string
- `include_coachnet` boolean
- `csv` boolean
- `full_object` boolean
- `include_children` boolean
- `renter_id` integer
- `dealer` boolean
- `instamatch` boolean
- `has_consigned_payout` boolean
- `returned_lt` string
- `returned_gt` string
- `abandoned` boolean
- `include_abandoned` boolean
- `status` string
- `order` string
- `archived` boolean
- `needs_review` boolean
- `refunded` boolean
- `new` boolean
- `coachnet_id_set` boolean
- `for_user_id` integer
- `ids` string
- `location_ids` string
- `include_shared` boolean
- `shared` boolean
- `filter` string
- `role` string
- `handoff_filter` string
- `include_quote_metadata` boolean
- `deliverable_campground` boolean
- `rental_category` string
- `source` string

## Response `200`

HTTP status code 200 and array of rental models

- Booking[]
  - `abandoned` boolean
  - `addons` BookingItem[]
    - `_deleted` boolean — special flag for handling batch update/delete
    - `booking_id` integer
    - `coachnet_item` boolean
    - `consigned_pay_amount` integer
    - `count` integer
    - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `daily` boolean
    - `deferred` boolean
    - `deferred_total` integer, nullable
    - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `delivery` boolean
    - `description` string
    - `discount_amount` integer
    - `generator` boolean
    - `id` integer
    - `image_url` string
    - `maximum_price` integer, nullable
    - `mileage` boolean
    - `minimum_price` integer, nullable
    - `name` string
    - `original_consigned_pay_pct` number, double — consigned owner support
    - `original_tax_rate_id` integer
    - `other_claim` boolean
    - `outdoorsy_item` boolean
    - `parent_item_id` integer
    - `parent_item_type` string
    - `percent` number, double
    - `percent_type` string
    - `position` integer
    - `premium_amount` integer
    - `premium_total` integer
    - `price` integer
    - `rental_amount` boolean — mutation modifiers
    - `required` boolean
    - `tax_amount` integer
    - `tax_description` string
    - `tax_name` string
    - `tax_rate` number, double
    - `tax_rates` BookingTaxRate[]
      - `booking_id` integer
      - `created` string
      - `deleted` boolean
      - `id` integer
      - `object_id` integer
      - `object_type` string
      - `payable_to` string
      - `source` string
      - `state` string
      - `tax_amount` integer
      - `tax_description` string
      - `tax_name` string
      - `tax_rate` number, double
      - `tax_rate_id` integer
      - `updated` string
      - `zip_code` string
    - `total` integer
    - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
  - `adults` integer
  - `affirm_details` AffirmDetails
    - `amount` integer
    - `charge_id` string
    - `checkout_token` string
    - `status` string
    - `user_id` string
  - `affirm_total` integer — Dynamically calculated. Not stored in DB
  - `applicable_tos_version` string
  - `attention` AttentionItem[]
    - `data` AttentionItemData
      - `auto_expires` boolean
      - `completed_at` string
      - `confirmation_message` string
      - `conversation_first_message` integer
      - `created_at` string
      - `daily` boolean
      - `description` string
      - `expires_at` string
      - `from` string
      - `group_item_details` Proposal[]
        - `action` string
        - `booking_id` integer
        - `created` string
        - `daily_changes` DailyChange[]
          - `date` string
          - `price` integer
          - `rules` unknown[]
            - unknown
        - `details` unknown
        - `dry_create` boolean
        - `future_booking` unknown
        - `id` integer
        - `note` string
        - `object_id` integer
        - `object_type` string
        - `owner_acknowledged` string
        - `owner_id` integer
        - `renter_acknowledged` string
        - `renter_dismissed` string
        - `status` string
        - `updated` string
        - `user_notice_events` NoticeResponse[]
          - `guest_acknowledgement_text` string
          - `guest_need_to_acknowledge` boolean
          - `guest_user_text` string
          - `host_acknowledgement_text` string
          - `host_help_url` string
          - `host_need_to_acknowledge` boolean
          - `host_user_text` string
          - `id` integer
          - `name` string
        - `user_notices_acknowledged` integer[]
      - `id` integer
      - `message` string
      - `name` string
      - `price` integer
      - `quantity` integer
      - `rental_amount` integer
      - `to` string
      - `total` integer
    - `is_actionable` boolean
    - `type` string
  - `auto_assign_group` boolean, nullable
  - `auto_insurance_type` string
  - `bid_id` integer
  - `block_discount_code` boolean
  - `booked` string — Not Mutable
  - `booking_agent` string
  - `booking_color` string, nullable
  - `booking_token` string
  - `bundle_id` string — calculated field that holds the result of whether the rental has this assigned if not, will look at the user/owner
  - `calculated_day_price` integer
  - `calculated_total_paid` integer
  - `campaign` string — dealer only
  - `campground_booking_url` string — Contains the booking id so ember can call /bookings/:id/default-selections
  - `campground_data` SiblingBookingCampgroundData
    - `external_campsite_id` string
    - `external_id` string
    - `site_name` string
    - `source` string
    - `status` string
  - `can_add_ending_generator_values` boolean
  - `can_add_ending_mileage_values` boolean
  - `can_add_starting_generator_values` boolean
  - `can_add_starting_mileage_values` boolean
  - `can_add_trip_protection` boolean — CanAddTransaction is used to check if the guest can add a trip protection
  - `can_apply_credits` boolean
  - `can_cancel_trip_protection` boolean — CanCancelTripProtection is used to check if the guest can cancel a trip protection
  - `can_charge_overage_fees` boolean
  - `can_file_claim` boolean
  - `can_generate_weather_quote` boolean
  - `can_manage_security_deposit` boolean
  - `can_manage_tax_rates` boolean — used by dashboard to disable tax editing
  - `can_renter_review` boolean
  - `can_renter_review_until` string
  - `can_see_contract` boolean
  - `can_suggest_date_change` boolean
  - `can_suggest_delivery_change` boolean
  - `cancel_metadata` CancelMetadata — CancelMetadata is stored as JSONB and contains structured cancellation information for analytics and tracking Fields: reason_value, penalty_category, timestamp, reason_metadata
  - `cancel_policy` string
  - `cancel_reason` string
  - `canceled` string
  - `cancellation_cutoff_date` string
  - `cancellation_refund_breakdown` CancellationRefundBreakdown — It captures the full component split computed by getRefundPayoutInputs so that the host dashboard can display a detailed breakdown without having to re-derive the numbers.
    - `cancellation_policy` string
    - `gross_owner_payout` integer
    - `is_cutoff_cancellation` boolean
    - `is_grace_period` boolean
    - `is_standardized_policy` boolean
    - `net_owner_payout` integer
    - `non_refundable_rif` integer
    - `other_items_amount` integer
    - `owner_fee` integer
    - `owner_fee_base` integer
    - `owner_fee_percentage` number, double
    - `penalty_percentage` number, double
    - `refund_percentage` number, double
    - `refundable_rif` integer
    - `rental_amount` integer
    - `rental_tax` integer
    - `rental_tax_payable_to` string
    - `renter_refund_amount` integer
    - `service_fee` integer
    - `service_fee_tax` integer
    - `total_rif` integer
  - `cancellation_refund_percentage` number, double
  - `cc_fee_percentage` number, double — Copied rental data - don't want rental changes to affect this booking
  - `checkin_stamp` string — Internal
  - `checkout_questions` object[] — DBMSISlice is a []string with database conversion methods
  - `checkout_stamp` string
  - `checkout_steps_id` integer
  - `children` integer
  - `coachnet_id` integer
  - `coachnet_premium` integer
  - `consignment` BookingConsignment
    - `keep_amt_cc_fee` integer
    - `keep_amt_insurance_fee` integer
    - `keep_pct_cc_fee` number, double
    - `keep_pct_insurance_fee` number, double
    - `pay_amt_total` integer
    - `pay_pct_generator` number, double
    - `pay_pct_mileage` number, double — Consigned owner support - copied rental data
    - `payout_id` ConsignedPayout
      - `bookings` Booking[]
      - `consigned_owner_id` integer
      - `created` string
      - `from` string
      - `id` integer
      - `items` ConsignedPayoutItem[]
        - `consigned_payout_id` ConsignedPayout — recursive
        - `created` string
        - `description` string
        - `id` integer
        - `name` string
        - `total` integer
        - `updated` string
      - `message` string
      - `owner_id` integer
      - `paid_date` string
      - `rental_id` integer
      - `status` string
      - `to` string
      - `total` integer
      - `updated` string
  - `conversation_id` integer
  - `created` string
  - `created_by_id` integer
  - `created_stamp` string
  - `custom_insurance_text` string, nullable
  - `dealer_minimum_days` integer — used to display information if a booking is below the dealers minimum days
  - `decline_reason` string
  - `default_insurance_coverage` string
  - `deliverable_campground` ExternalCampground
    - `available_for_dates` boolean — Fields calculated post search
    - `calculated_day_price` integer
    - `campground_catalog` CampgroundCatalog
      - `activity_features` CampgroundActivityFeature[]
        - `feature` string
        - `name` string
      - `amenities_categories` CampgroundAmenitiesCategory[]
        - `id` string
        - `name` string
      - `processed_amenities` object
      - `scenery_features` CampgroundSceneryFeature[]
        - `feature` string
        - `name` string
    - `campsite_category_ids` integer[]
    - `check_in_time` string — Check in / Check out times
    - `check_out_time` string
    - `description` string
    - `email` string — Contact information
    - `id` integer
    - `images` Image[]
      - `best` boolean
      - `category` Category
        - `name` string
        - `slug` string
      - `description` string
      - `id` integer
      - `position` integer
      - `primary` boolean
      - `rental_id` integer
      - `skip_enhance` boolean
      - `status` string
      - `tags` string
      - `url` string
      - `video` boolean
    - `is_odn` boolean — Flags
    - `is_site_available` boolean
    - `locale` Locale
      - `base_currency` string
      - `date_format` string
      - `distance_unit` string
      - `language` string
      - `length_unit` string
      - `liquid_unit` string
      - `time_format` string
      - `timezone` string
      - `weight_unit` string
    - `location` integer
    - `lowest_price` integer
    - `name` string
    - `odn_id` string
    - `phone` string
    - `presentment_currency` string — Currency
    - `primary_image_url` string
    - `reviews_num` integer
    - `score` number, double — Ratings and reviews
    - `settlement_currency` string
    - `site_map_image_url` string
    - `slug` string
    - `unavailable` boolean
    - `vacation_package_slug` string
    - `website_url` string — Links and Images
  - `delivery` BookingDelivery
    - `actual` number, double
    - `departure` number, double
    - `estimated` number, double
    - `estimated_fee` integer
    - `renter_comment` string
    - `return` number, double
    - `stationary` boolean
    - `suggested_fee` integer
  - `delivery_item` BookingItem
    - `_deleted` boolean — special flag for handling batch update/delete
    - `booking_id` integer
    - `coachnet_item` boolean
    - `consigned_pay_amount` integer
    - `count` integer
    - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `daily` boolean
    - `deferred` boolean
    - `deferred_total` integer, nullable
    - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `delivery` boolean
    - `description` string
    - `discount_amount` integer
    - `generator` boolean
    - `id` integer
    - `image_url` string
    - `maximum_price` integer, nullable
    - `mileage` boolean
    - `minimum_price` integer, nullable
    - `name` string
    - `original_consigned_pay_pct` number, double — consigned owner support
    - `original_tax_rate_id` integer
    - `other_claim` boolean
    - `outdoorsy_item` boolean
    - `parent_item_id` integer
    - `parent_item_type` string
    - `percent` number, double
    - `percent_type` string
    - `position` integer
    - `premium_amount` integer
    - `premium_total` integer
    - `price` integer
    - `rental_amount` boolean — mutation modifiers
    - `required` boolean
    - `tax_amount` integer
    - `tax_description` string
    - `tax_name` string
    - `tax_rate` number, double
    - `tax_rates` BookingTaxRate[]
      - `booking_id` integer
      - `created` string
      - `deleted` boolean
      - `id` integer
      - `object_id` integer
      - `object_type` string
      - `payable_to` string
      - `source` string
      - `state` string
      - `tax_amount` integer
      - `tax_description` string
      - `tax_name` string
      - `tax_rate` number, double
      - `tax_rate_id` integer
      - `updated` string
      - `zip_code` string
    - `total` integer
    - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
  - `delivery_usage_item` unknown
  - `delivery_usage_item_id` integer
  - `deposit_percentage` number, double
  - `destination` string
  - `destination_lat` number, double
  - `destination_lng` number, double
  - `details` unknown
  - `device_id` string
  - `discount_code` string — Copied discount code data, not allowed in request data.
  - `discount_code_amount` integer
  - `discount_code_applied_to` string
  - `discount_code_message` string
  - `display_insurance` string
  - `display_source` string
  - `display_status` string
  - `display_status_style` string
  - `documents` BookingDocuments
    - `claims_form` string
    - `contract` string
    - `departure_form` string
    - `departure_form_checklist` string
    - `esign_receipt` string
    - `insurance_binder` string
    - `pre_arrival_checklist` string
    - `protection_packages` string
    - `receipt` string
    - `return_form` string
  - `dropoff` BookingDropoff
    - `city` string
    - `country` string
    - `delivery` boolean
    - `lat` number, double
    - `lng` number, double
    - `state` string
    - `street` string
    - `street_etc` string
    - `zip` string
  - `duration` integer
  - `esign_enabled` boolean
  - `esign_pending` boolean
  - `expire_reason` string
  - `express_checkout_id` integer
  - `external` boolean, nullable
  - `external_gift_card_details` ExternalGiftCardDetails
    - `alocated_amount` integer
    - `card_number` string
    - `converted_amount` integer
    - `pin_verivied` boolean
    - `provider` string
    - `refund_amount` integer
    - `refund_converted_amount` integer
    - `refund_req_ref` string
    - `request_ref` string
  - `external_gift_card_details_v2` ExternalGiftCardDetails[]
    - `alocated_amount` integer
    - `card_number` string
    - `converted_amount` integer
    - `pin_verivied` boolean
    - `provider` string
    - `refund_amount` integer
    - `refund_converted_amount` integer
    - `refund_req_ref` string
    - `request_ref` string
  - `fees_locked` boolean
  - `fees_total` integer
  - `final_payment_due_days` integer
  - `followup_archived` boolean
  - `formatted` BookingDisplayFormatted
    - `insurance` BookingInsuranceFormatted
      - `action` string
      - `description` string
      - `title` string
      - `warning` string
  - `formatted_total_overage_fee` string
  - `fraudulent` boolean
  - `free_cancellation_available` boolean
  - `free_cancellation_period` integer
  - `from` string
  - `from_time` integer
  - `fx_fee_paid` integer
  - `generator` BookingGenerator
    - `actual` number, double
    - `departure` number, double
    - `estimated` number, double
    - `estimated_fee` integer
    - `return` number, double
    - `suggested_fee` integer
  - `generator_item` BookingItem
    - `_deleted` boolean — special flag for handling batch update/delete
    - `booking_id` integer
    - `coachnet_item` boolean
    - `consigned_pay_amount` integer
    - `count` integer
    - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `daily` boolean
    - `deferred` boolean
    - `deferred_total` integer, nullable
    - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `delivery` boolean
    - `description` string
    - `discount_amount` integer
    - `generator` boolean
    - `id` integer
    - `image_url` string
    - `maximum_price` integer, nullable
    - `mileage` boolean
    - `minimum_price` integer, nullable
    - `name` string
    - `original_consigned_pay_pct` number, double — consigned owner support
    - `original_tax_rate_id` integer
    - `other_claim` boolean
    - `outdoorsy_item` boolean
    - `parent_item_id` integer
    - `parent_item_type` string
    - `percent` number, double
    - `percent_type` string
    - `position` integer
    - `premium_amount` integer
    - `premium_total` integer
    - `price` integer
    - `rental_amount` boolean — mutation modifiers
    - `required` boolean
    - `tax_amount` integer
    - `tax_description` string
    - `tax_name` string
    - `tax_rate` number, double
    - `tax_rates` BookingTaxRate[]
      - `booking_id` integer
      - `created` string
      - `deleted` boolean
      - `id` integer
      - `object_id` integer
      - `object_type` string
      - `payable_to` string
      - `source` string
      - `state` string
      - `tax_amount` integer
      - `tax_description` string
      - `tax_name` string
      - `tax_rate` number, double
      - `tax_rate_id` integer
      - `updated` string
      - `zip_code` string
    - `total` integer
    - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
  - `generator_usage_item` unknown
  - `generator_usage_item_id` integer
  - `grace_period_ends_at` string
  - `handoff_summary` BookingHandoff
    - `id` string — ID is the type used throughout the system to identify a unique object. It properly handles marshaling for both json and sql databases. It properly handles null values in the database as well.
    - `owner_departure_complete` boolean — Completed bool `json:"completed" db:"completed"`
    - `owner_departure_eligible` boolean
    - `owner_departure_photo_count` integer
    - `owner_departure_signature_timestamp` string
    - `owner_return_complete` boolean
    - `owner_return_eligible` boolean
    - `owner_return_photo_count` integer
    - `owner_return_signature_timestamp` string
    - `renter_departure_complete` boolean
    - `renter_departure_eligible` boolean
    - `renter_departure_photo_count` integer
    - `renter_departure_signature_timestamp` string
    - `renter_return_complete` boolean
    - `renter_return_eligible` boolean
    - `renter_return_photo_count` integer
    - `renter_return_signature_timestamp` string
  - `has_approved_drivers` boolean
  - `has_setup_intent_enabled` boolean
  - `hold_sales_tax` boolean
  - `house_rules` string
  - `id` integer
  - `import_id` string
  - `imported` boolean — owner only
  - `include_coachnet` boolean
  - `infants` integer
  - `initial_duration` integer
  - `instamatch` boolean, nullable
  - `instant_book` boolean
  - `insurance` string
  - `insurance_approved` boolean
  - `insurance_approved_timestamp` string
  - `insurance_approved_updated_timestamp` string
  - `insurance_bundle` unknown
  - `insurance_claim_filed` boolean
  - `insurance_coverage` string
  - `insurance_plan_id` Plan
    - `allow_unregistered` boolean
    - `approved_vehicle_types` string[] — DBStringSlice is a []string with database conversion methods
    - `bundle_required` boolean
    - `claims_number` string
    - `comp_policy_url` string
    - `comprehensive_coverage` boolean
    - `comprehensive_maximum` string
    - `country` string
    - `created` string
    - `created_by_id` integer, nullable
    - `dealer_only` boolean
    - `hidden` boolean
    - `id` integer — The fields below are returned in the minimum response when this insurance plan is an element inside a rental
    - `insurance_address_1` string
    - `insurance_city` string
    - `insurance_end_date` string
    - `insurance_name` string
    - `insurance_plan_override` PlanOverride
      - `created` string
      - `dealer_owned_owner_fee_percentage` number, double
      - `dealer_owned_renter_fee_percentage` number, double
      - `id` integer
      - `insurance_plan_id` Plan — recursive
      - `owner_fee_percentage` number, double
      - `owner_id` integer
      - `renter_fee_percentage` number, double
      - `updated` string
    - `insurance_policy_number` string
    - `insurance_start_date` string
    - `insurance_state` string
    - `insurance_zip` string
    - `insured_address_1` string
    - `insured_city` string
    - `insured_name` string
    - `insured_state` string
    - `insured_zip` string
    - `label` string
    - `last_updated_by_id` integer, nullable
    - `liability_coverage` boolean
    - `liability_maximum` string
    - `liability_policy_url` string
    - `locality` string
    - `minimum_daily_fee` integer
    - `minimum_year` integer
    - `owner_comprehensive_deductible` string
    - `owner_fee_percentage` number, double
    - `owner_liability_deductible` string
    - `owner_liability_maximum` string
    - `rental_category` string
    - `renter_comprehensive_deductible` string
    - `renter_fee_percentage` number, double
    - `renter_liability_deductible` string
    - `renter_liability_maximum` string
    - `requires_driver_verification` boolean
    - `tiered` boolean
    - `updated` string
  - `insurance_renter_adjustable` boolean
  - `internal_notes` string
  - `is_request_less_than_minimum_days` boolean
  - `is_within_grace_period` boolean
  - `items` BookingItem[] — Items, calculations, payouts and fees
    - `_deleted` boolean — special flag for handling batch update/delete
    - `booking_id` integer
    - `coachnet_item` boolean
    - `consigned_pay_amount` integer
    - `count` integer
    - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `daily` boolean
    - `deferred` boolean
    - `deferred_total` integer, nullable
    - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `delivery` boolean
    - `description` string
    - `discount_amount` integer
    - `generator` boolean
    - `id` integer
    - `image_url` string
    - `maximum_price` integer, nullable
    - `mileage` boolean
    - `minimum_price` integer, nullable
    - `name` string
    - `original_consigned_pay_pct` number, double — consigned owner support
    - `original_tax_rate_id` integer
    - `other_claim` boolean
    - `outdoorsy_item` boolean
    - `parent_item_id` integer
    - `parent_item_type` string
    - `percent` number, double
    - `percent_type` string
    - `position` integer
    - `premium_amount` integer
    - `premium_total` integer
    - `price` integer
    - `rental_amount` boolean — mutation modifiers
    - `required` boolean
    - `tax_amount` integer
    - `tax_description` string
    - `tax_name` string
    - `tax_rate` number, double
    - `tax_rates` BookingTaxRate[]
      - `booking_id` integer
      - `created` string
      - `deleted` boolean
      - `id` integer
      - `object_id` integer
      - `object_type` string
      - `payable_to` string
      - `source` string
      - `state` string
      - `tax_amount` integer
      - `tax_description` string
      - `tax_name` string
      - `tax_rate` number, double
      - `tax_rate_id` integer
      - `updated` string
      - `zip_code` string
    - `total` integer
    - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
  - `locale` BookingLocale
    - `base_currency` string
    - `distance_unit` string
  - `location_id` integer
  - `locked` boolean
  - `loyalty_credit_issued` boolean
  - `loyalty_rewards_eligible` boolean
  - `medium` string
  - `metadata` unknown
  - `mileage` BookingMileage
    - `actual` number, double
    - `departure` number, double
    - `estimated` number, double
    - `estimated_fee` integer
    - `return` number, double
    - `suggested_fee` integer
  - `mileage_item` BookingItem
    - `_deleted` boolean — special flag for handling batch update/delete
    - `booking_id` integer
    - `coachnet_item` boolean
    - `consigned_pay_amount` integer
    - `count` integer
    - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `daily` boolean
    - `deferred` boolean
    - `deferred_total` integer, nullable
    - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `delivery` boolean
    - `description` string
    - `discount_amount` integer
    - `generator` boolean
    - `id` integer
    - `image_url` string
    - `maximum_price` integer, nullable
    - `mileage` boolean
    - `minimum_price` integer, nullable
    - `name` string
    - `original_consigned_pay_pct` number, double — consigned owner support
    - `original_tax_rate_id` integer
    - `other_claim` boolean
    - `outdoorsy_item` boolean
    - `parent_item_id` integer
    - `parent_item_type` string
    - `percent` number, double
    - `percent_type` string
    - `position` integer
    - `premium_amount` integer
    - `premium_total` integer
    - `price` integer
    - `rental_amount` boolean — mutation modifiers
    - `required` boolean
    - `tax_amount` integer
    - `tax_description` string
    - `tax_name` string
    - `tax_rate` number, double
    - `tax_rates` BookingTaxRate[]
      - `booking_id` integer
      - `created` string
      - `deleted` boolean
      - `id` integer
      - `object_id` integer
      - `object_type` string
      - `payable_to` string
      - `source` string
      - `state` string
      - `tax_amount` integer
      - `tax_description` string
      - `tax_name` string
      - `tax_rate` number, double
      - `tax_rate_id` integer
      - `updated` string
      - `zip_code` string
    - `total` integer
    - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
  - `mileage_usage_item` unknown
  - `mileage_usage_item_id` integer
  - `minimum_deposit` integer
  - `missing_data` string[]
  - `missing_requirements` object
  - `mutual_cancellation` boolean
  - `non_refundable_total` integer — NonRefundableTotal is the total amount that cannot be refunded to the renter. Trip Insurance that has been started is an example of something that would be added to this total
  - `offer_affirm` boolean
  - `offer_insurance` boolean
  - `offer_paypal_pay_later` boolean
  - `offer_roadside` boolean
  - `original_booking_source` string
  - `original_day_price` integer
  - `original_security_deposit` integer
  - `original_security_deposit_v2` integer
  - `original_service_fee` integer — renter only
  - `outdoorsy_fee` integer
  - `outdoorsy_remitted_taxes` integer
  - `overage_fee_collected` boolean
  - `overage_fee_expired` boolean
  - `overage_fee_section_display` boolean
  - `owner_addon_total` integer — Sum of all addons (booking items from rental_item parent_item_type)
  - `owner_approval_attempted` boolean, nullable
  - `owner_approved` boolean
  - `owner_approved_at` string
  - `owner_archived` boolean
  - `owner_credits_applied` integer
  - `owner_did_review` boolean
  - `owner_fee` integer
  - `owner_fee_aggregate_percentage` number, double — aggregate percentage for all owner fee services that we apply - for UI purpouses
  - `owner_fee_minimum_enforced` boolean — Owner fee minimum enforced
  - `owner_fee_minimum_per_night` integer — Owner fee minimum per night
  - `owner_fee_on_renter_cancellation` integer — Cancellation payout details - populated for owner/admin when status is renter_cancelled Enables the host dashboard cancellation payout breakdown modal (MP-4959)
  - `owner_fee_percentage` number, double
  - `owner_fee_percentage_record` number, double
  - `owner_fees` BookingItem[]
    - `_deleted` boolean — special flag for handling batch update/delete
    - `booking_id` integer
    - `coachnet_item` boolean
    - `consigned_pay_amount` integer
    - `count` integer
    - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `daily` boolean
    - `deferred` boolean
    - `deferred_total` integer, nullable
    - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `delivery` boolean
    - `description` string
    - `discount_amount` integer
    - `generator` boolean
    - `id` integer
    - `image_url` string
    - `maximum_price` integer, nullable
    - `mileage` boolean
    - `minimum_price` integer, nullable
    - `name` string
    - `original_consigned_pay_pct` number, double — consigned owner support
    - `original_tax_rate_id` integer
    - `other_claim` boolean
    - `outdoorsy_item` boolean
    - `parent_item_id` integer
    - `parent_item_type` string
    - `percent` number, double
    - `percent_type` string
    - `position` integer
    - `premium_amount` integer
    - `premium_total` integer
    - `price` integer
    - `rental_amount` boolean — mutation modifiers
    - `required` boolean
    - `tax_amount` integer
    - `tax_description` string
    - `tax_name` string
    - `tax_rate` number, double
    - `tax_rates` BookingTaxRate[]
      - `booking_id` integer
      - `created` string
      - `deleted` boolean
      - `id` integer
      - `object_id` integer
      - `object_type` string
      - `payable_to` string
      - `source` string
      - `state` string
      - `tax_amount` integer
      - `tax_description` string
      - `tax_name` string
      - `tax_rate` number, double
      - `tax_rate_id` integer
      - `updated` string
      - `zip_code` string
    - `total` integer
    - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
  - `owner_id` integer
  - `owner_insurance_claim_filed` boolean
  - `owner_insurance_fee_total` integer
  - `owner_integrations_fee` integer, nullable
  - `owner_payout` integer
  - `owner_payout_adjustment` integer
  - `owner_payout_with_claim_adjustments` integer — OwnerPayout + Claim adjustments if any
  - `owner_read` boolean
  - `owner_summary` unknown
  - `owner_total` integer
  - `owner_total_without_tax` integer — OwnerTotal - Tax (subtotal)
  - `parent_booking_id` integer, nullable
  - `partner_app` PartnerApp — partner app
    - `app_id` string
    - `app_name` string
    - `created` string
    - `default_app` boolean
    - `enabled` boolean
    - `id` integer
    - `owner_lead_fee_percentage` number, double
    - `owner_lead_only_fee_percentage` number, double
    - `partner` Partner
      - `active` boolean
      - `apps` PartnerApp[]
      - `created` string
      - `id` integer
      - `name` string
      - `slug` string
      - `updated` string
    - `renter_lead_fee_percentage` number, double
    - `renter_lead_only_fee_percentage` number, double
    - `updated` string
  - `payment_processor` PaymentProcessor — Typically this object is composed into a struct, but embedded into the same table using the `db:",embed"` struct tag.
    - `country` string
    - `external_processor` string
    - `external_processor_id` string
    - `name` string
  - `payout_actual_transfer_amount` integer — booking transfers summary
  - `pending_transactions` PendingTransaction[]
    - `amount` integer
    - `attempts` integer
    - `booking_id` integer
    - `brand` string
    - `card_id` integer
    - `created` string
    - `description` string
    - `display_type` string
    - `due` string
    - `id` integer
    - `last_four` string
    - `original_charge_id` integer
    - `payment_intent_id` string
    - `status` string
    - `type` string
    - `zendesk_ticket_id` integer
  - `personal_insurance_verification` boolean
  - `personal_insurance_verification_status` string
  - `pets` integer
  - `pickup` BookingPickup
    - `city` string
    - `country` string
    - `delivery` boolean
    - `lat` number, double
    - `lng` number, double
    - `state` string
    - `street` string
    - `street_etc` string
    - `zip` string
  - `premium_total` integer
  - `prep_fee_item` BookingItem
    - `_deleted` boolean — special flag for handling batch update/delete
    - `booking_id` integer
    - `coachnet_item` boolean
    - `consigned_pay_amount` integer
    - `count` integer
    - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `daily` boolean
    - `deferred` boolean
    - `deferred_total` integer, nullable
    - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `delivery` boolean
    - `description` string
    - `discount_amount` integer
    - `generator` boolean
    - `id` integer
    - `image_url` string
    - `maximum_price` integer, nullable
    - `mileage` boolean
    - `minimum_price` integer, nullable
    - `name` string
    - `original_consigned_pay_pct` number, double — consigned owner support
    - `original_tax_rate_id` integer
    - `other_claim` boolean
    - `outdoorsy_item` boolean
    - `parent_item_id` integer
    - `parent_item_type` string
    - `percent` number, double
    - `percent_type` string
    - `position` integer
    - `premium_amount` integer
    - `premium_total` integer
    - `price` integer
    - `rental_amount` boolean — mutation modifiers
    - `required` boolean
    - `tax_amount` integer
    - `tax_description` string
    - `tax_name` string
    - `tax_rate` number, double
    - `tax_rates` BookingTaxRate[]
      - `booking_id` integer
      - `created` string
      - `deleted` boolean
      - `id` integer
      - `object_id` integer
      - `object_type` string
      - `payable_to` string
      - `source` string
      - `state` string
      - `tax_amount` integer
      - `tax_description` string
      - `tax_name` string
      - `tax_rate` number, double
      - `tax_rate_id` integer
      - `updated` string
      - `zip_code` string
    - `total` integer
    - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
  - `presentment_currency` string
  - `processor_name` string
  - `proposals` Proposal[]
    - `action` string
    - `booking_id` integer
    - `created` string
    - `daily_changes` DailyChange[]
      - `date` string
      - `price` integer
      - `rules` unknown[]
        - unknown
    - `details` unknown
    - `dry_create` boolean
    - `future_booking` unknown
    - `id` integer
    - `note` string
    - `object_id` integer
    - `object_type` string
    - `owner_acknowledged` string
    - `owner_id` integer
    - `renter_acknowledged` string
    - `renter_dismissed` string
    - `status` string
    - `updated` string
    - `user_notice_events` NoticeResponse[]
      - `guest_acknowledgement_text` string
      - `guest_need_to_acknowledge` boolean
      - `guest_user_text` string
      - `host_acknowledgement_text` string
      - `host_help_url` string
      - `host_need_to_acknowledge` boolean
      - `host_user_text` string
      - `id` integer
      - `name` string
    - `user_notices_acknowledged` integer[]
  - `provide_insurance_binder` boolean
  - `raf_waiver_summary` RAFWaiverSummary
    - `cancellation_amount` integer
    - `description` string
    - `popup_message` string
    - `referee_amount` integer
    - `referee_completed` boolean
    - `referer_user_id` integer
    - `referral_code` string
    - `referrer_completed` boolean
  - `reason` string, nullable
  - `referred_owner_paid` boolean
  - `referred_owner_payout_amount` integer
  - `referred_renter_paid` boolean
  - `referred_renter_payout_amount` integer
  - `refund_options` BookingRefundOptions
    - `allow_user_refund_method` boolean — return numbers for display but user may not be allowed to choose
    - `cash_amount` integer
    - `credit_amount` integer
    - `credit_source` object
    - `display_cash_amount` string
    - `display_credit_amount` string
    - `is_pending_cancellation` boolean
    - `non_refundable_percentage` number, double
    - `owner_payout_amount` integer — show admin what to expect for owner payout
    - `refund_percentage` number, double
  - `remainder_amount` integer
  - `remainder_due_date` string
  - `remaining_days_to_cancellation_cutoff` integer
  - `rental_amount_item` BookingItem
    - `_deleted` boolean — special flag for handling batch update/delete
    - `booking_id` integer
    - `coachnet_item` boolean
    - `consigned_pay_amount` integer
    - `count` integer
    - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `daily` boolean
    - `deferred` boolean
    - `deferred_total` integer, nullable
    - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `delivery` boolean
    - `description` string
    - `discount_amount` integer
    - `generator` boolean
    - `id` integer
    - `image_url` string
    - `maximum_price` integer, nullable
    - `mileage` boolean
    - `minimum_price` integer, nullable
    - `name` string
    - `original_consigned_pay_pct` number, double — consigned owner support
    - `original_tax_rate_id` integer
    - `other_claim` boolean
    - `outdoorsy_item` boolean
    - `parent_item_id` integer
    - `parent_item_type` string
    - `percent` number, double
    - `percent_type` string
    - `position` integer
    - `premium_amount` integer
    - `premium_total` integer
    - `price` integer
    - `rental_amount` boolean — mutation modifiers
    - `required` boolean
    - `tax_amount` integer
    - `tax_description` string
    - `tax_name` string
    - `tax_rate` number, double
    - `tax_rates` BookingTaxRate[]
      - `booking_id` integer
      - `created` string
      - `deleted` boolean
      - `id` integer
      - `object_id` integer
      - `object_type` string
      - `payable_to` string
      - `source` string
      - `state` string
      - `tax_amount` integer
      - `tax_description` string
      - `tax_name` string
      - `tax_rate` number, double
      - `tax_rate_id` integer
      - `updated` string
      - `zip_code` string
    - `total` integer
    - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
  - `rental_charge_card_id` integer
  - `rental_id` integer
  - `rental_summary` unknown
  - `renter_age` integer
  - `renter_approved` boolean
  - `renter_approved_at` string
  - `renter_archived` boolean
  - `renter_can_waive_insurance` boolean
  - `renter_credits_applied` integer
  - `renter_destination_data` RenterDestinationData
    - `region` string
    - `spot_types` string[]
    - `stops` string[]
  - `renter_did_review` boolean
  - `renter_fee_percentage` number, double
  - `renter_fee_percentage_record` number, double
  - `renter_id` integer
  - `renter_insurance_claim_filed` boolean
  - `renter_insurance_fee_total` integer
  - `renter_payment_details` RenterPaymentDetails
    - `device_data` string
    - `ppi_id` integer
    - `processor_name` string
  - `renter_read` boolean
  - `renter_summary` unknown
  - `require_booking_time` boolean
  - `require_dmv_check` boolean
  - `require_drivers` boolean
  - `require_insurance` boolean
  - `require_renter_id_verification` boolean
  - `require_roadside` boolean
  - `reserve_amount` integer
  - `reserve_amount_after_credits` integer
  - `revenue_summary` RevenueSummary
    - `funds_held_by_outdoorsy` integer
    - `line_items` RevenueLineItem[]
      - `amount` integer
      - `name` string
    - `total` integer
  - `reviews` Review[]
    - `apply_credit` boolean — special incoming field, not stored in DB
    - `booking_id` integer
    - `booking_summary` BookingSummary
      - `from` string
      - `id` integer
      - `to` string
    - `can_edit` boolean
    - `can_edit_until` string
    - `cleanliness_score` number, double
    - `communication_score` number, double
    - `deleted` string, date-time — clocks.RfcTime was resulting in 0001-01-01 which I want to avoid. it should be null or a real date
    - `exclude_from_rating` boolean
    - `id` integer
    - `images` string[] — DBStringSlice is a []string with database conversion methods
    - `imported` boolean — used for imported reviews only
    - `listing_score` number, double
    - `mechanical_score` number, double
    - `name` string
    - `outdoorsy_only` boolean
    - `owner` ReviewOwner
      - `avatar_url` string
      - `first_name` string
      - `id` integer
      - `last_name` string
    - `owner_can_respond` boolean
    - `owner_response` OwnerResponseReview
      - `text` string
      - `timestamp` string
    - `published` boolean
    - `rental_id` integer
    - `rental_summary` RentalSummary
      - `campsite_summary` CampsiteSummary
        - `beds` integer
        - `campground_id` integer
        - `campground_name` string
        - `campground_sitemap_url` string
        - `display_campsite_type` string
        - `display_max_vehicle_length` string
        - `display_site_type` string
        - `is_odn` boolean
        - `rental_id` integer
        - `site_type` string
        - `sleeps` integer
        - `type` string
      - `disallow_movement` boolean
      - `display_type` string
      - `formatted_length` string
      - `id` integer
      - `interior_primary_image_url` string
      - `internal_id` string
      - `location` string
      - `name` string
      - `primary_image_url` string
      - `rental_category` string
      - `sleeps` integer
      - `slug` string
      - `stay_summary` StaySummary
        - `baths` integer
        - `bedrooms` integer
        - `beds` integer
        - `check_in_type` string
        - `display_stay_type` string
        - `location_description` string
        - `max_parking_spaces` integer
        - `parking_onsite` boolean
        - `rental_id` integer
        - `sleeps` integer
        - `type` string
      - `style` string
      - `type` string
    - `rental_tags` TagRental[]
      - `Created` string
      - `ID` integer
      - `Name` string
      - `Slug` string
      - `Updated` string
      - `position` integer
      - `usage_by_rental_count` integer
    - `review_images` ReviewImage[]
      - `created` string, date-time
      - `id` string — ID is the type used throughout the system to identify a unique object. It properly handles marshaling for both json and sql databases. It properly handles null values in the database as well.
      - `lat` number, double
      - `lng` number, double
      - `rental_id` string
      - `review_id` string
      - `reviewed` boolean
      - `reviewed_by` string
      - `status` string
      - `updated` string, date-time
      - `url` string
    - `reviewer` Reviewer
      - `avatar_url` string
      - `first_name` string
      - `id` integer
      - `last_name` string
    - `reviewer_id` integer
    - `score` number, double — Review Types
    - `source_page` string
    - `tags` Tag[] — Tags are saved on tag_rental_join
      - `allow_for_review` boolean
      - `created` string
      - `description` string
      - `id` integer
      - `name` string
      - `owner_user_id` integer, nullable
      - `position` integer
      - `slug` string
      - `updated` string
    - `text` string
    - `timestamp` string
    - `user_id` integer
    - `user_recommend` boolean
    - `value_score` number, double
  - `sd_post_trip_charges_data` unknown
  - `sd_post_trip_charges_enabled` boolean
  - `search_filters` SearchFilters
    - `festival_friendly` boolean
    - `make` string
    - `model` string[]
    - `pet_friendly` boolean
    - `smoking_allowed` boolean
    - `tailgate_friendly` boolean
    - `towing_capacity` integer
    - `towing_vehicle_make` string
    - `towing_vehicle_model` string
    - `towing_vehicle_year` integer
    - `travelers` integer
    - `year_max` integer
    - `year_min` integer
  - `security_deposit` integer
  - `security_deposit_card_id` integer
  - `security_deposit_claimed_amount` integer
  - `security_deposit_due_date` string
  - `security_deposit_due_days` integer
  - `security_deposit_payout_amount` integer
  - `security_deposit_refund_amount` integer
  - `security_deposit_remaining` integer
  - `security_deposit_reversable` integer
  - `security_deposit_status` string
  - `service_fee` integer
  - `service_fee_tax_rates` BookingTaxRate[]
    - `booking_id` integer
    - `created` string
    - `deleted` boolean
    - `id` integer
    - `object_id` integer
    - `object_type` string
    - `payable_to` string
    - `source` string
    - `state` string
    - `tax_amount` integer
    - `tax_description` string
    - `tax_name` string
    - `tax_rate` number, double
    - `tax_rate_id` integer
    - `updated` string
    - `zip_code` string
  - `services` BookingService[]
    - `booking_id` integer
    - `bundle_id` string, nullable
    - `category` string
    - `charge_to` string
    - `created` string
    - `daily` boolean
    - `dealer_flat_split` integer
    - `dealer_percent_split` number, double
    - `dealer_split_type` string
    - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
      - `Time` string, date-time
      - `Valid` boolean
    - `description` string
    - `discount_amount` integer
    - `external_reference_id` string
    - `fee_locked` boolean
    - `id` integer
    - `is_taxable` boolean — IsTaxable determines whether this service is taxable. This is defaulted to the service's IsTaxable field on BookingService create
    - `last_service_log` unknown
    - `lock_on_booking_status` string
    - `minimum_price` integer
    - `missing_fields` object
    - `name` string
    - `payable_to` string
    - `percent` number, double
    - `percent_type` string
    - `policy_start_date` string
    - `premium_amount` integer — PremiumAmount is the daily rate
    - `premium_total` integer — PremiumTotal is what we pay to the dealer
    - `prevent_delete` boolean
    - `price` integer
    - `quantity` integer
    - `required` boolean
    - `revision` integer
    - `roamly_weather_quote` unknown
    - `service_data` unknown
    - `service_id` integer
    - `tax_amount` integer
    - `tax_rates` BookingTaxRate[]
      - `booking_id` integer
      - `created` string
      - `deleted` boolean
      - `id` integer
      - `object_id` integer
      - `object_type` string
      - `payable_to` string
      - `source` string
      - `state` string
      - `tax_amount` integer
      - `tax_description` string
      - `tax_name` string
      - `tax_rate` number, double
      - `tax_rate_id` integer
      - `updated` string
      - `zip_code` string
    - `total` integer — Total is the full amount of what the renter pays (total + premium total) - does not include taxes
    - `updated` string
    - `variant_price` integer — Calculated price considering pricing variant
  - `session_id` string
  - `sibling_booking_group_id` integer, nullable
  - `sibling_bookings_totals` SiblingTotals — SiblingTotals is a struct to send the totals for combined sibling bookings
    - `addons` integer
    - `damage_protection` integer
    - `delivery_fee` integer
    - `discounts` integer
    - `external_campground_fee` integer
    - `generator` integer
    - `insurance_coverage` integer
    - `mileage` integer
    - `owner_fees` integer
    - `pet_fees` integer
    - `roadside_assistance` integer
    - `roamly_weather_protection` integer
    - `security_deposit_waiver` integer
    - `service_fees` integer
    - `taxes` integer
    - `total` integer
    - `trip_protection` integer
  - `siblings` SiblingBookings — SiblingBookings an associated RV booking and campsite booking
    - `rental_campsite` SiblingBooking — SiblingBooking embedded struct to get around Booking struct issues where we only render the first instance in the response then simply render the booking ID. See `func (b *Booking) ResponseElementData(options objx.Map)` for more details.
      - `abandoned` boolean
      - `addons` BookingItem[]
        - `_deleted` boolean — special flag for handling batch update/delete
        - `booking_id` integer
        - `coachnet_item` boolean
        - `consigned_pay_amount` integer
        - `count` integer
        - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
          - `Time` string, date-time
          - `Valid` boolean
        - `daily` boolean
        - `deferred` boolean
        - `deferred_total` integer, nullable
        - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
          - `Time` string, date-time
          - `Valid` boolean
        - `delivery` boolean
        - `description` string
        - `discount_amount` integer
        - `generator` boolean
        - `id` integer
        - `image_url` string
        - `maximum_price` integer, nullable
        - `mileage` boolean
        - `minimum_price` integer, nullable
        - `name` string
        - `original_consigned_pay_pct` number, double — consigned owner support
        - `original_tax_rate_id` integer
        - `other_claim` boolean
        - `outdoorsy_item` boolean
        - `parent_item_id` integer
        - `parent_item_type` string
        - `percent` number, double
        - `percent_type` string
        - `position` integer
        - `premium_amount` integer
        - `premium_total` integer
        - `price` integer
        - `rental_amount` boolean — mutation modifiers
        - `required` boolean
        - `tax_amount` integer
        - `tax_description` string
        - `tax_name` string
        - `tax_rate` number, double
        - `tax_rates` BookingTaxRate[]
          - `booking_id` integer
          - `created` string
          - `deleted` boolean
          - `id` integer
          - `object_id` integer
          - `object_type` string
          - `payable_to` string
          - `source` string
          - `state` string
          - `tax_amount` integer
          - `tax_description` string
          - `tax_name` string
          - `tax_rate` number, double
          - `tax_rate_id` integer
          - `updated` string
          - `zip_code` string
        - `total` integer
        - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
          - `Time` string, date-time
          - `Valid` boolean
      - `adults` integer
      - `affirm_details` AffirmDetails
        - `amount` integer
        - `charge_id` string
        - `checkout_token` string
        - `status` string
        - `user_id` string
      - `affirm_total` integer — Dynamically calculated. Not stored in DB
      - `applicable_tos_version` string
      - `attention` AttentionItem[]
        - `data` AttentionItemData
          - `auto_expires` boolean
          - `completed_at` string
          - `confirmation_message` string
          - `conversation_first_message` integer
          - `created_at` string
          - `daily` boolean
          - `description` string
          - `expires_at` string
          - `from` string
          - `group_item_details` Proposal[]
            - `action` string
            - `booking_id` integer
            - `created` string
            - `daily_changes` DailyChange[]
              - …
            - `details` unknown
            - `dry_create` boolean
            - `future_booking` unknown
            - `id` integer
            - `note` string
            - `object_id` integer
            - `object_type` string
            - `owner_acknowledged` string
            - `owner_id` integer
            - `renter_acknowledged` string
            - `renter_dismissed` string
            - `status` string
            - `updated` string
            - `user_notice_events` NoticeResponse[]
              - …
            - `user_notices_acknowledged` integer[]
          - `id` integer
          - `message` string
          - `name` string
          - `price` integer
          - `quantity` integer
          - `rental_amount` integer
          - `to` string
          - `total` integer
        - `is_actionable` boolean
        - `type` string
      - `auto_assign_group` boolean, nullable
      - `auto_insurance_type` string
      - `bid_id` integer
      - `block_discount_code` boolean
      - `booked` string — Not Mutable
      - `booking_agent` string
      - `booking_color` string, nullable
      - `booking_token` string
      - `bundle_id` string — calculated field that holds the result of whether the rental has this assigned if not, will look at the user/owner
      - `calculated_day_price` integer
      - `calculated_total_paid` integer
      - `campaign` string — dealer only
      - `campground_booking_url` string — Contains the booking id so ember can call /bookings/:id/default-selections
      - `campground_data` SiblingBookingCampgroundData
        - `external_campsite_id` string
        - `external_id` string
        - `site_name` string
        - `source` string
        - `status` string
      - `can_add_ending_generator_values` boolean
      - `can_add_ending_mileage_values` boolean
      - `can_add_starting_generator_values` boolean
      - `can_add_starting_mileage_values` boolean
      - `can_add_trip_protection` boolean — CanAddTransaction is used to check if the guest can add a trip protection
      - `can_apply_credits` boolean
      - `can_cancel_trip_protection` boolean — CanCancelTripProtection is used to check if the guest can cancel a trip protection
      - `can_charge_overage_fees` boolean
      - `can_file_claim` boolean
      - `can_generate_weather_quote` boolean
      - `can_manage_security_deposit` boolean
      - `can_manage_tax_rates` boolean — used by dashboard to disable tax editing
      - `can_renter_review` boolean
      - `can_renter_review_until` string
      - `can_see_contract` boolean
      - `can_suggest_date_change` boolean
      - `can_suggest_delivery_change` boolean
      - `cancel_metadata` CancelMetadata — CancelMetadata is stored as JSONB and contains structured cancellation information for analytics and tracking Fields: reason_value, penalty_category, timestamp, reason_metadata
      - `cancel_policy` string
      - `cancel_reason` string
      - `canceled` string
      - `cancellation_cutoff_date` string
      - `cancellation_refund_breakdown` CancellationRefundBreakdown — It captures the full component split computed by getRefundPayoutInputs so that the host dashboard can display a detailed breakdown without having to re-derive the numbers.
        - `cancellation_policy` string
        - `gross_owner_payout` integer
        - `is_cutoff_cancellation` boolean
        - `is_grace_period` boolean
        - `is_standardized_policy` boolean
        - `net_owner_payout` integer
        - `non_refundable_rif` integer
        - `other_items_amount` integer
        - `owner_fee` integer
        - `owner_fee_base` integer
        - `owner_fee_percentage` number, double
        - `penalty_percentage` number, double
        - `refund_percentage` number, double
        - `refundable_rif` integer
        - `rental_amount` integer
        - `rental_tax` integer
        - `rental_tax_payable_to` string
        - `renter_refund_amount` integer
        - `service_fee` integer
        - `service_fee_tax` integer
        - `total_rif` integer
      - `cancellation_refund_percentage` number, double
      - `cc_fee_percentage` number, double — Copied rental data - don't want rental changes to affect this booking
      - `checkin_stamp` string — Internal
      - `checkout_questions` object[] — DBMSISlice is a []string with database conversion methods
      - `checkout_stamp` string
      - `checkout_steps_id` integer
      - `children` integer
      - `coachnet_id` integer
      - `coachnet_premium` integer
      - `consignment` BookingConsignment
        - `keep_amt_cc_fee` integer
        - `keep_amt_insurance_fee` integer
        - `keep_pct_cc_fee` number, double
        - `keep_pct_insurance_fee` number, double
        - `pay_amt_total` integer
        - `pay_pct_generator` number, double
        - `pay_pct_mileage` number, double — Consigned owner support - copied rental data
        - `payout_id` ConsignedPayout
          - `bookings` Booking[]
          - `consigned_owner_id` integer
          - `created` string
          - `from` string
          - `id` integer
          - `items` ConsignedPayoutItem[]
            - `consigned_payout_id` ConsignedPayout — recursive
            - `created` string
            - `description` string
            - `id` integer
            - `name` string
            - `total` integer
            - `updated` string
          - `message` string
          - `owner_id` integer
          - `paid_date` string
          - `rental_id` integer
          - `status` string
          - `to` string
          - `total` integer
          - `updated` string
      - `conversation_id` integer
      - `created` string
      - `created_by_id` integer
      - `created_stamp` string
      - `custom_insurance_text` string, nullable
      - `dealer_minimum_days` integer — used to display information if a booking is below the dealers minimum days
      - `decline_reason` string
      - `default_insurance_coverage` string
      - `deliverable_campground` ExternalCampground
        - `available_for_dates` boolean — Fields calculated post search
        - `calculated_day_price` integer
        - `campground_catalog` CampgroundCatalog
          - `activity_features` CampgroundActivityFeature[]
            - `feature` string
            - `name` string
          - `amenities_categories` CampgroundAmenitiesCategory[]
            - `id` string
            - `name` string
          - `processed_amenities` object
          - `scenery_features` CampgroundSceneryFeature[]
            - `feature` string
            - `name` string
        - `campsite_category_ids` integer[]
        - `check_in_time` string — Check in / Check out times
        - `check_out_time` string
        - `description` string
        - `email` string — Contact information
        - `id` integer
        - `images` Image[]
          - `best` boolean
          - `category` Category
            - `name` string
            - `slug` string
          - `description` string
          - `id` integer
          - `position` integer
          - `primary` boolean
          - `rental_id` integer
          - `skip_enhance` boolean
          - `status` string
          - `tags` string
          - `url` string
          - `video` boolean
        - `is_odn` boolean — Flags
        - `is_site_available` boolean
        - `locale` Locale
          - `base_currency` string
          - `date_format` string
          - `distance_unit` string
          - `language` string
          - `length_unit` string
          - `liquid_unit` string
          - `time_format` string
          - `timezone` string
          - `weight_unit` string
        - `location` integer
        - `lowest_price` integer
        - `name` string
        - `odn_id` string
        - `phone` string
        - `presentment_currency` string — Currency
        - `primary_image_url` string
        - `reviews_num` integer
        - `score` number, double — Ratings and reviews
        - `settlement_currency` string
        - `site_map_image_url` string
        - `slug` string
        - `unavailable` boolean
        - `vacation_package_slug` string
        - `website_url` string — Links and Images
      - `delivery` BookingDelivery
        - `actual` number, double
        - `departure` number, double
        - `estimated` number, double
        - `estimated_fee` integer
        - `renter_comment` string
        - `return` number, double
        - `stationary` boolean
        - `suggested_fee` integer
      - `delivery_item` BookingItem
        - `_deleted` boolean — special flag for handling batch update/delete
        - `booking_id` integer
        - `coachnet_item` boolean
        - `consigned_pay_amount` integer
        - `count` integer
        - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
          - `Time` string, date-time
          - `Valid` boolean
        - `daily` boolean
        - `deferred` boolean
        - `deferred_total` integer, nullable
        - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
          - `Time` string, date-time
          - `Valid` boolean
        - `delivery` boolean
        - `description` string
        - `discount_amount` integer
        - `generator` boolean
        - `id` integer
        - `image_url` string
        - `maximum_price` integer, nullable
        - `mileage` boolean
        - `minimum_price` integer, nullable
        - `name` string
        - `original_consigned_pay_pct` number, double — consigned owner support
        - `original_tax_rate_id` integer
        - `other_claim` boolean
        - `outdoorsy_item` boolean
        - `parent_item_id` integer
        - `parent_item_type` string
        - `percent` number, double
        - `percent_type` string
        - `position` integer
        - `premium_amount` integer
        - `premium_total` integer
        - `price` integer
        - `rental_amount` boolean — mutation modifiers
        - `required` boolean
        - `tax_amount` integer
        - `tax_description` string
        - `tax_name` string
        - `tax_rate` number, double
        - `tax_rates` BookingTaxRate[]
          - `booking_id` integer
          - `created` string
          - `deleted` boolean
          - `id` integer
          - `object_id` integer
          - `object_type` string
          - `payable_to` string
          - `source` string
          - `state` string
          - `tax_amount` integer
          - `tax_description` string
          - `tax_name` string
          - `tax_rate` number, double
          - `tax_rate_id` integer
          - `updated` string
          - `zip_code` string
        - `total` integer
        - `updated` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
          - `Time` string, date-time
          - `Valid` boolean
      - `delivery_usage_item` unknown
      - `delivery_usage_item_id` integer
      - `deposit_percentage` number, double
      - `destination` string
      - `destination_lat` number, double
      - `destination_lng` number, double
      - `details` unknown
      - `device_id` string
      - `discount_code` string — Copied discount code data, not allowed in request data.
      - `discount_code_amount` integer
      - `discount_code_applied_to` string
      - `discount_code_message` string
      - `display_insurance` string
      - `display_source` string
      - `display_status` string
      - `display_status_style` string
      - `documents` BookingDocuments
        - `claims_form` string
        - `contract` string
        - `departure_form` string
        - `departure_form_checklist` string
        - `esign_receipt` string
        - `insurance_binder` string
        - `pre_arrival_checklist` string
        - `protection_packages` string
        - `receipt` string
        - `return_form` string
      - `dropoff` BookingDropoff
        - `city` string
        - `country` string
        - `delivery` boolean
        - `lat` number, double
        - `lng` number, double
        - `state` string
        - `street` string
        - `street_etc` string
        - `zip` string
      - `duration` integer
      - `esign_enabled` boolean
      - `esign_pending` boolean
      - `expire_reason` string
      - `express_checkout_id` integer
      - `external` boolean, nullable
      - `external_gift_card_details` ExternalGiftCardDetails
        - `alocated_amount` integer
        - `card_number` string
        - `converted_amount` integer
        - `pin_verivied` boolean
        - `provider` string
        - `refund_amount` integer
        - `refund_converted_amount` integer
        - `refund_req_ref` string
        - `request_ref` string
      - `external_gift_card_details_v2` ExternalGiftCardDetails[]
        - `alocated_amount` integer
        - `card_number` string
        - `converted_amount` integer
        - `pin_verivied` boolean
        - `provider` string
        - `refund_amount` integer
        - `refund_converted_amount` integer
        - `refund_req_ref` string
        - `request_ref` string
      - `fees_locked` boolean
      - `fees_total` integer
      - `final_payment_due_days` integer
      - `followup_archived` boolean
      - `formatted` BookingDisplayFormatted
        - `insurance` BookingInsuranceFormatted
          - `action` string
          - `description` string
          - `title` string
          - `warning` string
      - `formatted_total_overage_fee` string
      - `fraudulent` boolean
      - `free_cancellation_available` boolean
      - `free_cancellation_period` integer
      - `from` string
      - `from_time` integer
      - `fx_fee_paid` integer
      - `generator` BookingGenerator
        - `actual` number, double
        - `departure` number, double
        - `estimated` number, double
        - `estimated_fee` integer
        - `return` number, double
        - `suggested_fee` integer
      - `generator_item` BookingItem
        - `_deleted` boolean — special flag for handling batch update/delete
        - `booking_id` integer
        - `coachnet_item` boolean
        - `consigned_pay_amount` integer
        - `count` integer
        - `created` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
          - `Time` string, date-time
          - `Valid` boolean
        - `daily` boolean
        - `deferred` boolean
        - `deferred_total` integer, nullable
        - `deleted_at` NullTime — NullTime represents a time.Time that may be null. NullTime implements the sql.Scanner interface so it can be used as a scan destination, similar to sql.NullString.
          - `Time` string, date-time
          - `Valid` boolean
        - `delivery` boolean
        - `description` string
        - `discount_amount` integer
        - `generator` boolean
        - `id` integer
        - `image_url` string
        - `maximum_price` integer, nullable
        - `mileage` boolean
- … truncated; see the full OpenAPI document linked below

## Other responses

- `400` — Invalid input or state means you're bad
- `401` — Unauthorized error
- `404` — Not found error
- `default` — An unknown, unexpected error.

---

[API](https://skmtc.net/outdoorsy/apis/outdoorsy-api-documentation.md) · [All operations](https://skmtc.net/outdoorsy/apis/outdoorsy-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/outdoorsy/outdoorsy-api-documentation/versions/f0cf8f605ea0/schema)
