openapi: 3.2.0 info: title: Hostfully Quote API license: name: Apache 2.0 url: https://www.hostfully.com/ version: v3.0.1 servers: - url: https://sandbox-api.hostfully.com security: - JWT-Authentication: [] - Agency-API-key: [] tags: - name: Quote paths: /api/v3.3/quotes: post: tags: - Quote summary: Calculate quote description: Calculates a rental quote for a property based on stay details operationId: calculateQuote requestBody: content: application/json: schema: $ref: '#/components/schemas/QuoteCalculationRequestApi3Dto' required: true responses: '200': description: Quote calculated successfully content: application/json: schema: $ref: '#/components/schemas/QuoteApiResponseWrapper' components: schemas: QuoteFeeOverridesApi3Dto: type: object properties: feeId: type: integer format: int32 deprecated: true feeUid: type: string name: type: string amountType: type: string enum: - AMOUNT - TAX amount: type: number taxationRate: type: number scope: type: string enum: - PER_NIGHT - PER_STAY - PER_GUEST_PER_NIGHT - PER_GUEST - PER_PET - PER_PET_PER_NIGHT - PERCENTAGE_OF_TOTAL - PERCENTAGE_OF_RENT type: type: string enum: - CLEANING - EARLY_ARRIVAL - LATE_DEPARTURE - PET - TAX - CUSTOM isOptional: type: boolean netPrice: type: number enabled: type: boolean removed: type: boolean QuoteRentBreakdownApi3Dto: type: object properties: nightlyAmount: type: number nightlyDate: type: string format: date nightlyBaseAmount: type: number PriceApi3Dto: type: object properties: netPrice: type: number taxationRate: type: number taxAmount: type: number grossPrice: type: number QuoteApiResponseWrapper: type: object properties: quote: $ref: '#/components/schemas/QuoteApi3Dto' QuoteOrderServiceApi3Dto: type: object properties: title: type: string grossPrice: type: number PromoCodeApi3Dto: type: object properties: uid: type: string code: type: string status: type: string enum: - ACTIVE - EXPIRED - REDEEMED - DELETED type: type: string enum: - AMOUNT - PERCENT value: type: number currency: type: string enum: - AED - ARS - AUD - BGN - BHD - BRL - CAD - CHF - CLP - CNY - COP - CZK - DKK - DOP - EUR - GBP - GTQ - HKD - HUF - IDR - IKR - ILS - INR - JPY - KES - KRW - MXN - MYR - NOK - NONE - NZD - PEN - PHP - PLN - RON - RUB - SEK - SGD - THB - TRY - TWD - USD - UYU - VEF - VND - VUV - JOD - SAR - EGP - ZAR - TTD - BBD - CVE - AWG - MAD - PYG singleUsage: type: boolean validFromZonedDateTime: type: string format: date-time validToZonedDateTime: type: string format: date-time expirationZonedDateTime: type: string format: date-time validFromUTCDateTime: type: string example: '2026-04-20T11:52:36' validToUTCDateTime: type: string example: '2026-04-20T11:52:36' expirationUTCDateTime: type: string example: '2026-04-20T11:52:36' propertyUid: type: string agencyUid: type: string QuoteOrderAdjustmentApi3Dto: type: object properties: id: type: integer format: int32 isPaid: type: boolean amount: type: number QuoteCalculationRequestApi3Dto: required: - agencyUid - checkInDate - checkOutDate - guests - propertyUid type: object properties: agencyUid: type: string leadUid: maxLength: 64 minLength: 1 type: string propertyUid: type: string checkInDate: type: string format: date checkOutDate: type: string format: date guests: type: integer format: int32 childrenCount: type: integer description: The number of children in the reservation, to be used for quote calculation purposes. If not supplied, defaults to 0. format: int32 example: 2 petCount: type: integer format: int32 overrides: $ref: '#/components/schemas/QuoteOverridesApi3Dto' affiliateId: type: string QuoteFeesApi3Dto: type: object properties: cleaningFee: $ref: '#/components/schemas/PriceApi3Dto' otherFees: type: array items: $ref: '#/components/schemas/QuoteFeeApi3Dto' totalFeeAmount: type: number QuoteApi3Dto: type: object properties: rent: $ref: '#/components/schemas/QuoteRentApi3Dto' securityDeposit: type: number includeSecurityDepositInTotal: type: boolean fees: $ref: '#/components/schemas/QuoteFeesApi3Dto' services: type: array items: $ref: '#/components/schemas/QuoteOrderServiceApi3Dto' adjustments: type: array items: $ref: '#/components/schemas/QuoteOrderAdjustmentApi3Dto' adjustmentItems: type: array items: $ref: '#/components/schemas/QuoteOrderAdjustmentItemApi3Dto' totalAmount: type: number totalWithoutDiscount: type: number currency: type: string enum: - USD - EUR - GBP - CAD - JPY - INR - MYR - AUD - KES - MXN - HKD - NZD - CHF - BRL - CLP - COP - PEN - ARS - UYU - VEF - CNY - THB - KRW - IDR - SGD - TWD - AED - ZAR - CZK - DKK - DOP - SEK - BGN - ILS - NOK - RON - RUB - PHP - VND - HUF - IKR - PLN - PYG - TRY - GTQ - VUV - JOD - SAR - EGP - TTD - MAD - CVE - BBD - AWG - BHD - NONE currencySymbol: type: string overrides: $ref: '#/components/schemas/QuoteOverridesApi3Dto' totalTaxAmount: type: number totalPrice: type: number deprecated: true PriceOverridesApi3Dto: required: - netPrice type: object properties: netPrice: type: number taxationRate: type: number QuoteRentApi3Dto: type: object properties: rentNetPrice: type: number rentBreakdowns: type: array items: $ref: '#/components/schemas/QuoteRentBreakdownApi3Dto' extraGuestsNetPrice: type: number extraGuestsBaseNetPrice: type: number listPrice: type: number discount: $ref: '#/components/schemas/PromoCodeApi3Dto' netPrice: type: number taxationRate: type: number taxAmount: type: number grossPrice: type: number rentBaseNetPrice: type: number rateMultiplier: type: number rateMultiplierAmount: type: number pricingRuleAmountApplied: type: number QuoteOrderAdjustmentItemApi3Dto: type: object properties: uid: type: string transactionType: type: string enum: - CHARGE - REFUND adjustmentType: type: string enum: - RENT - TAX - FEE - SERVICE - RESOLUTION amount: type: number note: type: string created: type: string format: date-time QuoteFeeApi3Dto: type: object properties: feeId: type: integer format: int32 deprecated: true feeUid: type: string name: type: string amountType: type: string enum: - AMOUNT - TAX isEditable: type: boolean netPrice: type: number taxationRate: type: number taxAmount: type: number grossPrice: type: number type: type: string enum: - FEE - TAX QuoteRentOverridesApi3Dto: type: object properties: rentBaseNetPrice: type: number rentNetPrice: type: number extraGuestsNetPrice: type: number taxationRate: type: number taxAmount: type: number extraGuestsBaseNetPrice: type: number QuoteFeesOverridesApi3Dto: type: object properties: cleaningFee: $ref: '#/components/schemas/PriceOverridesApi3Dto' otherFees: type: array items: $ref: '#/components/schemas/QuoteFeeOverridesApi3Dto' QuoteOverridesApi3Dto: type: object properties: rent: $ref: '#/components/schemas/QuoteRentOverridesApi3Dto' securityDeposit: type: number fees: $ref: '#/components/schemas/QuoteFeesOverridesApi3Dto' totalPrice: type: number force100PercentPaymentAtReservation: type: boolean securitySchemes: JWT-Authentication: type: apiKey description: OAuth Access Token name: Authorization in: header Agency-API-key: type: apiKey description: API Key name: X-HOSTFULLY-APIKEY in: header externalDocs: description: Hostfully Documentation url: https://dev.hostfully.com/v3.0/reference x-readme: explorer-enabled: true proxy-enabled: true