Outdoorsy Quotes API

The quotes API from Outdoorsy — 1 operation(s) for quotes.

OpenAPI Specification

outdoorsy-quotes-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: 'The Outdoorsy API (or simply "API") is organized around REST. It uses

    predictable, resource-oriented URLs and implements standard HTTP response

    codes, verbs, authentication mechanisms, and a variety of request encodings.


    ## Versioning


    The API implements semantic versioning.'
  title: Outdoorsy API Documentation Quotes API
  version: 0.0.1
servers:
- url: /v0
security:
- Bearer:
  - '[]'
- API-Key:
  - '[]'
tags:
- name: quotes
paths:
  /quotes:
    post:
      tags:
      - quotes
      summary: Generates a quote for a given rental based on start and stop dates.
      operationId: createQuote
      responses:
        '200':
          $ref: '#/components/responses/quoteResponse'
        '400':
          $ref: '#/components/responses/badRequestError'
        '404':
          $ref: '#/components/responses/notFoundError'
        default:
          $ref: '#/components/responses/genericError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Request'
components:
  schemas:
    Response:
      type: object
      properties:
        addons:
          type: array
          items:
            $ref: '#/components/schemas/BookingItem'
          x-go-name: Addons
        block_discount_code:
          type: boolean
          x-go-name: BlockDiscountCode
        bundle_id:
          type: string
          x-go-name: BundleID
        calculated_day_price:
          type: integer
          format: uint64
          x-go-name: CalculatedDayPrice
        can_apply_credits:
          type: boolean
          x-go-name: CanApplyCredits
        can_generate_weather_quote:
          type: boolean
          x-go-name: CanGenerateWeatherQuote
        dealer_minimum_days:
          type: integer
          format: uint64
          x-go-name: DealerMinimumDays
        deliverable_campgrounds:
          type: array
          items:
            $ref: '#/components/schemas/ExternalCampground'
          x-go-name: DeliverableCampgrounds
        delivery:
          $ref: '#/components/schemas/Delivery'
        delivery_campground_id:
          type: integer
          format: int64
          x-go-name: DeliveryCampgroundId
        delivery_item:
          $ref: '#/components/schemas/BookingItem'
        discount_code:
          type: string
          x-go-name: DiscountCode
        discount_code_amount:
          type: integer
          format: uint64
          x-go-name: DiscountCodeAmount
        discount_code_applied_to:
          type: string
          x-go-name: DiscountCodeAppliedTo
        discount_code_message:
          type: string
          x-go-name: DiscountCodeMessage
        discount_message:
          $ref: '#/components/schemas/Warning'
        duration:
          type: integer
          format: uint64
          x-go-name: Duration
        estimated_generator_cost:
          type: integer
          format: uint64
          x-go-name: EstimatedGeneratorCost
        estimated_mileage_cost:
          type: integer
          format: uint64
          x-go-name: EstimatedMileageCost
        fees_total:
          type: integer
          format: uint64
          x-go-name: FeesTotal
        festival_friendly:
          type: boolean
          x-go-name: FestivalFriendly
        final_payment_amount:
          type: integer
          format: uint64
          x-go-name: FinalPaymentAmount
        final_payment_due_date:
          type: string
        from:
          type: string
        from_time:
          type: integer
          format: int64
          x-go-name: FromTime
        generator_item:
          $ref: '#/components/schemas/BookingItem'
        generator_total_included:
          type: number
          format: double
          x-go-name: GeneratorTotalIncluded
        id:
          type: string
          x-go-name: ID
        instant_book:
          type: boolean
          x-go-name: InstantBook
        insurance_bundle:
          $ref: '#/components/schemas/BookingBundle'
        is_request_less_than_minimum_days:
          type: boolean
          x-go-name: IsRequestLessThanMinimumDays
        items:
          type: array
          items:
            $ref: '#/components/schemas/BookingItem'
          x-go-name: Items
        locale_base_currency:
          type: string
          x-go-name: LocaleBaseCurrency
        make:
          type: string
          x-go-name: Make
        mileage_item:
          $ref: '#/components/schemas/BookingItem'
        mileage_total_included:
          type: number
          format: double
          x-go-name: MileageTotalIncluded
        model:
          type: array
          items:
            type: string
          x-go-name: Model
        occupancy:
          $ref: '#/components/schemas/Occupancy'
        offer_affirm:
          type: boolean
          x-go-name: OfferAffirm
        offer_paypal_pay_later:
          type: boolean
          x-go-name: OfferPayPalPayLater
        original_day_override_price:
          type: integer
          format: uint64
          x-go-name: OriginalDayOverridePrice
        original_day_price:
          type: integer
          format: uint64
          x-go-name: OriginalDayPrice
        original_month_price:
          type: integer
          format: uint64
          x-go-name: OriginalMonthPrice
        original_service_fee:
          type: integer
          format: uint64
          x-go-name: OriginalServiceFee
        original_week_price:
          type: integer
          format: uint64
          x-go-name: OriginalWeekPrice
        outdoorsy_fee:
          type: integer
          format: uint64
          x-go-name: RenterIntegrationsFee
        owner_fee:
          type: integer
          format: uint64
          x-go-name: OwnerFee
        owner_fees:
          type: array
          items:
            $ref: '#/components/schemas/BookingItem'
          x-go-name: OwnerFees
        owner_integrations_fee:
          type: integer
          format: uint64
          x-go-name: OwnerIntegrationsFee
        pet_friendly:
          type: boolean
          x-go-name: PetFriendly
        pets:
          type: integer
          format: int64
          x-go-name: Pets
        presentment_currency:
          type: string
          x-go-name: PresentmentCurrency
        remainder_amount:
          type: integer
          format: uint64
          x-go-name: RemainderAmount
        remainder_due_date:
          type: string
        rental_amount:
          type: integer
          format: uint64
          x-go-name: RentalAmount
        rental_amount_item:
          $ref: '#/components/schemas/BookingItem'
        rental_summary:
          $ref: '#/components/schemas/RentalSummary'
        renter_credits_applied:
          type: integer
          format: uint64
          x-go-name: RenterCreditsApplied
        renter_reserve_amount:
          type: integer
          format: uint64
          x-go-name: RenterReserveAmount
        requested_duration:
          type: integer
          format: uint64
          x-go-name: RequestedDuration
        reserve_amount:
          type: integer
          format: uint64
          x-go-name: ReserveAmount
        security_deposit:
          type: integer
          format: uint64
          x-go-name: SecurityDeposit
        service_fee:
          type: integer
          format: uint64
          x-go-name: ServiceFee
        services:
          type: array
          items:
            $ref: '#/components/schemas/BookingService'
          x-go-name: Services
        settlement_currency:
          type: string
          x-go-name: SettlementCurrency
        sibling_quote_group_id:
          type: integer
          format: int64
          x-go-name: SiblingQuoteGroupID
        sibling_quotes_totals:
          $ref: '#/components/schemas/SiblingTotals'
        siblings:
          $ref: '#/components/schemas/SiblingQuotes'
        smoking_allowed:
          type: boolean
          x-go-name: SmokingAllowed
        subtotal:
          type: integer
          format: uint64
          x-go-name: Subtotal
        tailgate_friendly:
          type: boolean
          x-go-name: TailgateFriendly
        tax:
          type: integer
          format: uint64
          x-go-name: Tax
        tax_rates:
          type: array
          items:
            $ref: '#/components/schemas/TaxRateTotalItem'
          x-go-name: TaxRates
        to:
          type: string
        to_time:
          type: integer
          format: int64
          x-go-name: ToTime
        total:
          type: integer
          format: uint64
          x-go-name: Total
        total_after_credits:
          type: integer
          format: uint64
          x-go-name: TotalAfterCredits
        total_after_deductions:
          description: 'the total amount that we will take from user card/paypal account for a given booking

            deprecated use TotalAfterCredits'
          type: integer
          format: uint64
          x-go-name: TotalAfterDeductions
        towing_capacity:
          type: integer
          format: int64
          x-go-name: TowingCapacity
        towing_vehicle_make:
          type: string
          x-go-name: TowingVehicleMake
        towing_vehicle_model:
          type: string
          x-go-name: TowingVehicleModel
        towing_vehicle_year:
          type: integer
          format: int64
          x-go-name: TowingVehicleYear
        travelers:
          type: integer
          format: int64
          x-go-name: Travelers
        use_day_price:
          type: boolean
          x-go-name: UseDayPrice
        use_day_pricing:
          type: boolean
          x-go-name: UseDayPricing
        use_system_tax_rates:
          type: boolean
          x-go-name: UseSystemTaxRates
        use_tax_inclusive_pricing:
          type: boolean
          x-go-name: UseTaxInclusivePricing
        user_notice_events:
          type: array
          items:
            $ref: '#/components/schemas/NoticeResponse'
          x-go-name: UserNoticeEvents
        waiver_summary:
          $ref: '#/components/schemas/WaiverSummary'
        warning:
          $ref: '#/components/schemas/Warning'
        year_max:
          type: integer
          format: int64
          x-go-name: YearMax
        year_min:
          type: integer
          format: int64
          x-go-name: YearMin
      x-go-package: github.com/outdoorsy/api/internal/quote
    IMap:
      type: object
      additionalProperties: {}
      x-go-package: github.com/outdoorsy/api/pkg/jsonb
    TaxRateItem:
      type: object
      properties:
        description:
          type: string
          x-go-name: Description
        original_tax_rate_id:
          type: integer
          format: int64
          x-go-name: TaxRateID
        tax_amount:
          type: integer
          format: int64
          x-go-name: Amount
        tax_name:
          type: string
          x-go-name: Name
        tax_rate:
          type: number
          format: double
          x-go-name: Rate
      x-go-package: github.com/outdoorsy/api/internal/tax_rates
    Locale:
      type: object
      properties:
        base_currency:
          type: string
          x-go-name: BaseCurrency
        date_format:
          type: string
          x-go-name: DateFormat
        distance_unit:
          type: string
          x-go-name: DistanceUnit
        language:
          type: string
          x-go-name: Language
        length_unit:
          type: string
          x-go-name: LengthUnit
        liquid_unit:
          type: string
          x-go-name: LiquidUnit
        time_format:
          type: string
          x-go-name: TimeFormat
        timezone:
          type: string
          x-go-name: Timezone
        weight_unit:
          type: string
          x-go-name: WeightUnit
      x-go-package: github.com/outdoorsy/api/model
    BookingTaxRate:
      type: object
      properties:
        booking_id:
          type: integer
          format: int64
          x-go-name: BookingID
        created:
          type: string
          x-go-name: Created
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        deleted:
          type: boolean
          x-go-name: Deleted
        id:
          type: integer
          format: int64
          x-go-name: ID
        object_id:
          type: integer
          format: int64
          x-go-name: ObjectID
        object_type:
          type: string
          x-go-name: ObjectType
        payable_to:
          type: string
          x-go-name: PayableTo
        source:
          type: string
          x-go-name: Source
        state:
          type: string
          x-go-name: State
        tax_amount:
          type: integer
          format: int64
          x-go-name: Amount
        tax_description:
          type: string
          x-go-name: Description
        tax_name:
          type: string
          x-go-name: Name
        tax_rate:
          type: number
          format: double
          x-go-name: Rate
        tax_rate_id:
          type: integer
          format: int64
          x-go-name: TaxRateID
        updated:
          type: string
          x-go-name: Updated
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        zip_code:
          type: string
          x-go-name: ZipCode
      x-go-package: github.com/outdoorsy/api/internal/tax_rates
    CampgroundActivityFeature:
      type: object
      properties:
        feature:
          type: string
          x-go-name: Slug
        name:
          type: string
          x-go-name: Name
      x-go-package: github.com/outdoorsy/api/internal/seeker/client
    Delivery:
      type: object
      properties:
        comment:
          type: string
          x-go-name: Comment
        estimated_distance:
          type: number
          format: double
          x-go-name: EstimatedDistance
        location:
          $ref: '#/components/schemas/DeliveryLocation'
        stationary:
          type: boolean
          x-go-name: Stationary
      x-go-package: github.com/outdoorsy/api/internal/quote
    Warning:
      description: Warning used for quote and booking
      type: object
      properties:
        message:
          type: string
          x-go-name: Message
      x-go-package: github.com/outdoorsy/api/types
    DBInterfaceMap:
      description: DBInterfaceMap is a map[string]interface{} with database conversion methods
      type: object
      additionalProperties: {}
      x-go-package: github.com/outdoorsy/api/utils
    ProcessedCampgroundAmenity:
      type: object
      properties:
        available:
          type: boolean
          x-go-name: Available
        category:
          type: string
          x-go-name: Category
        id:
          type: string
          x-go-name: ID
        name:
          type: string
          x-go-name: Name
      x-go-package: github.com/outdoorsy/api/internal/seeker/client
    TaxRateTotalItem:
      description: 'Used when calculated booking/quote

        and storing calculated result on booking'
      type: object
      properties:
        amount:
          type: integer
          format: int64
          x-go-name: Amount
        name:
          type: string
          x-go-name: Name
        rates:
          $ref: '#/components/schemas/TaxRateItems'
      x-go-package: github.com/outdoorsy/api/internal/tax_rates
    BookingFeesVariantModification:
      description: BookingFeesVariantModification defines how to modify a price
      type: object
      properties:
        modification_type:
          type: string
          x-go-name: ModificationType
        target:
          type: string
          x-go-name: Target
        value:
          type: number
          format: double
          x-go-name: Value
      x-go-package: github.com/outdoorsy/api/model
    WaiverSummary:
      type: object
      properties:
        description:
          type: string
          x-go-name: Description
        owner_completed:
          type: boolean
          x-go-name: OwnerCompleted
        owner_terms:
          type: string
          x-go-name: OwnerTerms
        renter_completed:
          type: boolean
          x-go-name: RenterCompleted
        renter_confirmation_description:
          type: string
          x-go-name: RenterConfirmationDescription
        renter_confirmation_title:
          type: string
          x-go-name: RenterConfirmationTitle
        renter_terms:
          type: string
          x-go-name: RenterTerms
      x-go-package: github.com/outdoorsy/api/types
    BookingService:
      type: object
      properties:
        booking_id:
          type: integer
          format: int64
          x-go-name: BookingID
        bundle_id:
          type:
          - string
          - 'null'
        category:
          type: string
          x-go-name: Category
        charge_to:
          type: string
          x-go-name: ChargeTo
        created:
          type: string
          x-go-name: Created
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        daily:
          type: boolean
          x-go-name: Daily
        dealer_flat_split:
          type: integer
          format: int64
          x-go-name: DealerFlatSplit
        dealer_percent_split:
          type: number
          format: double
          x-go-name: DealerPercentSplit
        dealer_split_type:
          type: string
          x-go-name: DealerSplitType
        deleted_at:
          $ref: '#/components/schemas/NullTime'
        description:
          type: string
          x-go-name: Description
        discount_amount:
          type: integer
          format: int64
          x-go-name: DiscountAmount
        external_reference_id:
          type: string
          x-go-name: ExternalReferenceID
        fee_locked:
          type: boolean
          x-go-name: FeeLocked
        id:
          type: integer
          format: int64
          x-go-name: ID
        is_taxable:
          description: 'IsTaxable determines whether this service is taxable. This is defaulted

            to the service''s IsTaxable field on BookingService create'
          type: boolean
          x-go-name: IsTaxable
        last_service_log:
          x-go-name: LastServiceLog
        lock_on_booking_status:
          type: string
          x-go-name: LockOnBookingStatus
        minimum_price:
          type: integer
          format: int64
          x-go-name: MinimumPrice
        missing_fields:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          x-go-name: MissingFields
        name:
          type: string
          x-go-name: Name
        payable_to:
          type: string
          x-go-name: PayableTo
        percent:
          type: number
          format: double
          x-go-name: Percent
        percent_type:
          type: string
          x-go-name: PercentType
        policy_start_date:
          type: string
          x-go-name: PolicyStartDate
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        premium_amount:
          description: PremiumAmount is the daily rate
          type: integer
          format: int64
          x-go-name: PremiumAmount
        premium_total:
          description: PremiumTotal is what we pay to the dealer
          type: integer
          format: int64
          x-go-name: PremiumTotal
        prevent_delete:
          type: boolean
          x-go-name: PreventDelete
        price:
          type: integer
          format: int64
          x-go-name: Price
        quantity:
          type: integer
          format: int64
          x-go-name: Quantity
        required:
          type: boolean
          x-go-name: Required
        revision:
          type: integer
          format: int64
          x-go-name: Revision
        roamly_weather_quote:
          $ref: '#/components/schemas/DBInterfaceMap'
        service_data:
          $ref: '#/components/schemas/DBInterfaceMap'
        service_id:
          type: integer
          format: int64
          x-go-name: ServiceID
        tax_amount:
          type: integer
          format: int64
          x-go-name: TaxAmount
        tax_rates:
          type: array
          items:
            $ref: '#/components/schemas/BookingTaxRate'
          x-go-name: TaxRates
        total:
          description: Total is the full amount of what the renter pays (total + premium total) - does not include taxes
          type: integer
          format: int64
          x-go-name: Total
        updated:
          type: string
          x-go-name: Updated
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        variant_price:
          description: Calculated price considering pricing variant
          type: integer
          format: int64
          x-go-name: VariantPrice
      x-go-package: github.com/outdoorsy/api/internal/booking_services
    CampgroundSceneryFeature:
      type: object
      properties:
        feature:
          type: string
          x-go-name: Slug
        name:
          type: string
          x-go-name: Name
      x-go-package: github.com/outdoorsy/api/internal/seeker/client
    NoticeResponse:
      type: object
      properties:
        guest_acknowledgement_text:
          type: string
          x-go-name: GuestAcknowledgementText
        guest_need_to_acknowledge:
          type: boolean
          x-go-name: GuestNeedToAcknowledge
        guest_user_text:
          type: string
          x-go-name: GuestUserText
        host_acknowledgement_text:
          type: string
          x-go-name: HostAcknowledgementText
        host_help_url:
          type: string
          x-go-name: HostHelpUrl
        host_need_to_acknowledge:
          type: boolean
          x-go-name: HostNeedToAcknowledge
        host_user_text:
          type: string
          x-go-name: HostUserText
        id:
          type: integer
          format: int64
          x-go-name: ID
        name:
          type: string
          x-go-name: Name
      x-go-package: github.com/outdoorsy/api/internal/user_notice_events
    DeliveryLocation:
      type: object
      properties:
        city:
          type: string
          x-go-name: City
        country:
          type: string
          x-go-name: Country
        full_search_name_location:
          type: string
          x-go-name: FullSearchNameLocation
        lat:
          type: number
          format: double
          x-go-name: Lat
        lng:
          type: number
          format: double
          x-go-name: Lng
        search_name_location:
          type: string
          x-go-name: SearchNameLocation
        state:
          type: string
          x-go-name: State
        street:
          type: string
          x-go-name: Street
        street_etc:
          type: string
          x-go-name: StreetEtc
        zip:
          type: string
          x-go-name: Zip
      x-go-package: github.com/outdoorsy/api/types
    Request:
      type: object
      properties:
        booking_fees_variant:
          $ref: '#/components/schemas/BookingFeesVariant'
        bundle_id:
          type: string
          x-go-name: BundleID
        delivery:
          $ref: '#/components/schemas/Delivery'
        delivery_campground_id:
          type: integer
          format: int64
          x-go-name: DeliveryCampgroundId
        discount_code:
          type: string
          x-go-name: DiscountCode
        estimated_generator_hours:
          type: number
          format: double
          x-go-name: EstimatedGeneratorHours
        estimated_miles:
          type: number
          format: double
          x-go-name: EstimatedMiles
        external_campsite_id:
          type: string
          x-go-name: ExternalCampsiteID
        festival_friendly:
          type: boolean
          x-go-name: FestivalFriendly
        from:
          type: string
        from_time:
          type: integer
          format: int64
          x-go-name: FromTime
        id:
          type: string
          x-go-name: ID
        imported:
          type: boolean
          x-go-name: Imported
        include_coachnet:
          type: boolean
          x-go-name: IncludeCoachnet
        include_linen_fee:
          type: boolean
          x-go-name: IncludeLinenFee
        include_pet_fee:
          type: boolean
          x-go-name: IncludePetFee
        insurance:
          type: string
          x-go-name: Insurance
        items:
          type: array
          items:
            $ref: '#/components/schemas/ItemRequest'
          x-go-name: Items
        locale:
          type: string
          x-go-name: Locale
        loyalty_rewards_eligible:
          type: boolean
          x-go-name: LoyaltyRewardsEligible
        make:
          type: string
          x-go-name: Make
        model:
          type: array
          items:
            type: string
          x-go-name: Model
        occupancy:
          $ref: '#/components/schemas/Occupancy'
        omit_taxes:
          type: boolean
          x-go-name: OmitTaxes
        only_price_breakdown:
          type: boolean
          x-go-name: OnlyPriceBreakdown
        pet_friendly:
          type: boolean
          x-go-name: PetFriendly
        pets:
          type: integer
          format: int64
          x-go-name: Pets
        prefer_cheapest_bundle:
          type: boolean
          x-go-name: PreferCheapestBundle
        presentment_currency:
          type: string
          x-go-name: PresentmentCurrency
        rental_id:
          type: integer
          format: int64
          x-go-name: RentalID
        renter_anon_id:
          type: string
          x-go-name: RenterAnonID
        renter_id:
          type: integer
          format: int64
          x-go-name: RenterID
        reserve:
          type: boolean
          x-go-name: Reserve
        roamly_weather_quote:
          $ref: '#/components/schemas/DBInterfaceMap'
        rv_profile:
          $ref: '#/components/schemas/RVProfile'
        services:
          type: array
          items:
            type: integer
            format: int64
          x-go-name: Services
        sibling_quote_group_id:
          type: integer
          format: int64
          x-go-name: SiblingQuoteGroupID
        smoking_allowed:
          type: boolean
          x-go-name: SmokingAllowed
        source:
          type: string
          x-go-name: Source
        tailgate_friendly:
          type: boolean
          x-go-name: TailgateFriendly
        to:
          type: string
        to_time:
          type: integer
          format: int64
          x-go-name: ToTime
        towing_capacity:
          type: integer
          format: int64
          x-go-name: TowingCapacity
        towing_vehicle_make:
          type: string
          x-go-name: TowingVehicleMake
        towing_vehicle_model:
          type: string
          x-go-name: TowingVehicleModel
        towing_vehicle_year:
          type: integer
          format: int64
          x-go-name: TowingVehicleYear
        travelers:
          type: integer
          format: int64
          x-go-name: Travelers
        trip_credits_disabled:
          type: boolean
          x-go-name: TripCreditsDisabled
        year_max:
          type: integer
          format: int64
          x-go-name: YearMax
        year_min:
          type: integer
          format: int64
          x-go-name: YearMin
      x-go-package: github.com/outdoorsy/api/internal/quote
    BundleFeatureItem:
      type: object
      properties:
        details:
          type: string
          x-go-name: Details
        name:
          type: string
          x-go-name: Name
        position:
          type: integer
          format: int64
          x-go-name: Position
        service_id:
          type: integer
          format: int64
          x-go-name: ServiceID
        type:
          type: string
          x-go-name: Type
      x-go-package: github.com/outdoorsy/api/internal/booking_bundle
    Category:
      type: object
      properties:
        name:
          type: string
          x-go-name: Name
        slug:
          type: string
          x-go-name: Slug
      x-go-package: github.com/outdoorsy/api/internal/seeker/client
    CampgroundAmenitiesCategory:
      type: object
      properties:
        id:
          type: string
          x-go-name: ID
        name:
          type: string
          x-go-name: Name
      x-go-package: github.com/outdoorsy/api/internal/seeker/client
    RVProfile:
      type: object
      properties:
        length:
          type: integer
          format: int64
          x-go-name: Length
        slideouts:
          type: array
          items:
            type: string
          x-go-name: SlideOuts
        type:
          type: string
          x-go-name: Type
      x-go-package: github.com/outdoorsy/api/internal/bookings
    CampsiteSummary:
      type: object
      properties:
        beds:
          type: integer
          format: int64
          x-go-name: Beds
        campground_id:
          type: integer
          format: int64
          x-go-name: CampgroundID
        campground_name:
          type: string
          x-go-name: CampgroundName
        campground_sitemap_url:
          type: string
          x-go-name: CampgroundSiteMapURL
        display_campsite_type:
          type: string
          x-go-name: DisplayCampsiteType
        display_max_vehicle_length:
          type: string
          x-go-name: DisplayMaxVehicleLength
        display_site_type:
          type: string
          x-go-name: DisplaySiteType
        is_odn:
          type: boolean
          x-go-name: IsOdn
        rental_id:
          type: integer
          format: int64
          x-go-name: RentalID
        site_type:
          type: string
          x-go-name: SiteType
        sleeps:
          type: integer
          format: int64
          x-go-name: Sleeps
        type:
          type: string
          x-go-name: CategoryType
      x-go-package: github.com/outdoorsy/api/types
    BookingFeesVariantCondition:
      type: object
      properties:
        operator:
          type: string
          x-go-name: Operator
        property:
          type: string
          x-go-name: Property
        value:
          x-go-name: Value
      x-go-package: github.com/outdoorsy/api/model
    StaySummary:
      type: object
      properties:
        baths:
          type: integer
          format: int64
          x-go-name: Baths
        bedrooms:
          type: integer
          format: int64
          x-go-name: Bedrooms
        beds:
          type: integer
          format: int64
          x-go-name: Beds
        check_in_type:
          type: string
          x-go-name: CheckInType
        display_stay_type:
          type: string
          x-go-name: DisplayStayType
        location_description:
          type: string
          x-go-name: LocationDescription
        max_parking_spaces:
          type: integer
          format: int64
          x-go-name: MaxParkingSpaces
        parking_onsite:
          type: boolean
          x-go-name: ParkingOnsite
        rental_id:
          type: integer
          format: int64
          x-go-name: RentalID
        sleeps:
          type: integer
          format: int64
          x-go-name: Sleeps
        type:
          type: string
          x-go-name: Type
      x-go-package: github.com/outdoorsy/api/types
    RentalSummary:
      type: object
      properties:
        campsite_summary:
          $ref: '#/components/schemas/CampsiteSummary'
        disallow_movement:
          type: boolean
          x-go-name: DisallowMovement
        display_type:
          type: string
          x-go-name: DisplayType
        formatted_length:
          type: string
          x-go-name: FormattedLength
        id:
          type: integer
          format: int64
          x-go-name: ID
        interior_primary_image_url:
          type: string
          x-go-name: InteriorPrimaryImageURL
        internal_id:
          type: string
          x-go-name: InternalID
        location:
          type: string
          x-go-name: Location
        name:
          type: string
          x-go-name: Name
        primary_image_url:
          type: string
          x-go-name: PrimaryImageURL
        rental_category:
          type: string
          x-go-name: RentalCategory
        sleeps:
          type: integer
          format: int64
          x-go-name: Sleeps
        slug:
          type: string
          x-go-name: Slug
   

# --- truncated at 32 KB (49 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/outdoorsy/refs/heads/main/openapi/outdoorsy-quotes-api-openapi.yml