Holidu Booking Terms API

The Booking Terms API from Holidu — 5 operation(s) for booking terms.

Operations 10

GET /v2/apartments/terms-and-conditions Get terms and conditions for apartment #
POST /v2/apartments/terms-and-conditions Update terms and conditions for apartment #
GET /v2/apartments/payment-configuration Get payment configuration for apartment #
POST /v2/apartments/payment-configuration Update payment configuration for apartment #
DELETE /v2/apartments/payment-configuration Delete payment configuration for apartment #
GET /v2/apartments/cancellation-policy Get cancellation conditions for apartment #
POST /v2/apartments/cancellation-policy Update cancellation conditions for apartment #
DELETE /v2/apartments/cancellation-policy Delete cancellation policy for apartment #
GET /v2/apartments/payment-configuration/rate-ids Get payment configuration rateIds for apartment #
GET /v2/apartments/cancellation-policy/rate-ids Get cancellation policy rate Ids for apartment #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/holidu-booking-terms-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

holidu-booking-terms-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Connectivity Booking Terms API
  description: 'Please read the API Guide that will help you for your integration to Holidu.

    You''ll find there the steps you''ll go through, tips and frequently asked questions.


    If you need any support, please contact us at partnersupport@holidu.com.'
  termsOfService: https://www.holidu.com/gtc
  contact:
    name: Holidu
    url: https://www.holidu.com
    email: partnersupport@holidu.com
  license:
    name: Apache License Version 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  version: '2.0'
servers:
- url: https://provider-api-sandbox.holidu.com
  description: Sandbox Environment
- url: https://provider-api.holidu.com
  description: Holidu Production API
security:
- api-key:
  - read
  - write
tags:
- name: Booking Terms
paths:
  /v2/apartments/terms-and-conditions:
    get:
      tags:
      - Booking Terms
      summary: Get terms and conditions for apartment
      operationId: getTermsAndConditions
      parameters:
      - name: providerApartmentId
        in: query
        required: false
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: Successfully retrieved terms and conditions for apartment
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApartmentTermsAndConditions'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
    post:
      tags:
      - Booking Terms
      summary: Update terms and conditions for apartment
      operationId: updateTermsAndConditions
      parameters:
      - name: providerApartmentId
        in: query
        required: false
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/ApartmentTermsAndConditions'
        required: true
      responses:
        '200':
          description: Successfully updated terms and conditions for apartment
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApartmentTermsAndConditions'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
  /v2/apartments/payment-configuration:
    get:
      tags:
      - Booking Terms
      summary: Get payment configuration for apartment
      operationId: getPaymentConfiguration
      parameters:
      - name: providerApartmentId
        in: query
        required: false
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      - name: rateId
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successfully retrieved payment configuration for apartment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApartmentPaymentConfiguration'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
    post:
      tags:
      - Booking Terms
      summary: Update payment configuration for apartment
      description: Replaces existing payment configurations with new ones for apartment
      operationId: updatePaymentConfiguration
      parameters:
      - name: providerApartmentId
        in: query
        required: false
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApartmentPaymentConfiguration'
        required: true
      responses:
        '200':
          description: Successfully updated payment configuration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApartmentPaymentConfiguration'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
    delete:
      tags:
      - Booking Terms
      summary: Delete payment configuration for apartment
      description: Deletes existing payment configuration for apartment
      operationId: deletePaymentConfiguration
      parameters:
      - name: providerApartmentId
        in: query
        required: true
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      - name: rateId
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successfully deleted payment configuration
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
  /v2/apartments/cancellation-policy:
    get:
      tags:
      - Booking Terms
      summary: Get cancellation conditions for apartment
      operationId: getCancellationPolicy
      parameters:
      - name: providerApartmentId
        in: query
        required: false
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      - name: rateId
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successful retrieval of cancellation conditions
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApartmentCancellationPolicy'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
    post:
      tags:
      - Booking Terms
      summary: Update cancellation conditions for apartment
      description: Replaces any pre-configured cancellation policies with new ones for Apartment
      operationId: updateCancellationConditions
      parameters:
      - name: providerApartmentId
        in: query
        required: false
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/ApartmentCancellationPolicy'
        required: true
      responses:
        '200':
          description: Cancellation policies updated
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApartmentCancellationPolicy'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
    delete:
      tags:
      - Booking Terms
      summary: Delete cancellation policy for apartment
      description: Deletes existing cancellation policy for apartment
      operationId: deleteCancellationPolicy
      parameters:
      - name: providerApartmentId
        in: query
        required: true
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      - name: rateId
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successfully deleted cancellation policy
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
  /v2/apartments/payment-configuration/rate-ids:
    get:
      tags:
      - Booking Terms
      summary: Get payment configuration rateIds for apartment
      operationId: getPaymentConfigurationRateIds
      parameters:
      - name: providerApartmentId
        in: query
        required: false
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: Successfully retrieved payment configuration rate Ids for apartment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApartmentPaymentConfiguration'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
  /v2/apartments/cancellation-policy/rate-ids:
    get:
      tags:
      - Booking Terms
      summary: Get cancellation policy rate Ids for apartment
      operationId: getCancellationPolicyRateIds
      parameters:
      - name: providerApartmentId
        in: query
        required: false
        schema:
          type: string
      - name: provider
        in: query
        required: false
        schema:
          type: string
      - name: holiduApartmentId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: Successful retrieval of cancellation policy rate Ids
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApartmentCancellationPolicy'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '404':
          description: Apartment does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HoliduErrorResponse'
components:
  schemas:
    ApartmentTermsAndConditions:
      required:
      - url
      type: object
      properties:
        countries:
          type: array
          description: List of country codes represented in standard ISO 3166-1 ALPHA-2 format.  If empty then applies to none.
          items:
            maxLength: 2
            minLength: 2
            type: string
            description: List of country codes represented in standard ISO 3166-1 ALPHA-2 format.  If empty then applies to none.
        url:
          type: string
          description: Url to terms and conditions
          example: https://www.abc.org/xyz
      description: Terms and conditions which apply on booking for the given countries
    HoliduErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Error Text
          example: 'Invalid Json: Unexpected character'
    ApartmentCancellationPolicy:
      required:
      - cancellationFeeInPercent
      - daysBeforeArrival
      type: object
      properties:
        daysBeforeArrival:
          minimum: 0
          type: integer
          description: Number of days before arrival for which this cancellation policy is valid
          format: int32
          example: 10
        cancellationFeeInPercent:
          maximum: 100
          minimum: 0
          type: number
          description: Booking percentage which is non-refundable
          example: 30
        rateId:
          pattern: DEFAULT|REFUNDABLE|NON_REFUNDABLE
          type: string
          description: Rate identifier
          format: string
          example: NON_REFUNDABLE
    ApartmentPaymentConfiguration:
      required:
      - paymentMethods
      - paymentRates
      type: object
      properties:
        paymentMethods:
          type: array
          items:
            type: string
            description: List of payment methods valid for booking
            enum:
            - BANK_TRANSFER
            - CREDIT_CARD
            - PAYPAL
            - CHEQUE_VACANCES
            - IDEAL
            - INVOICE
        paymentRates:
          $ref: '#/components/schemas/PaymentRates'
        rateId:
          pattern: DEFAULT|REFUNDABLE|NON_REFUNDABLE
          type: string
          description: Rate identifier
          format: string
          example: NON_REFUNDABLE
      description: Payment configuration (payment methods and rates) applicable on booking
    PaymentRatePerDate:
      required:
      - daysBeforeArrival
      - rateAmountInPercentage
      type: object
      properties:
        daysBeforeArrival:
          type: integer
          description: 'Limit of days before arrival until when the rate should be paid, for example: Until 10 days before arrival 50% should be paid'
          format: int32
          example: 10
        rateAmountInPercentage:
          maximum: 100
          minimum: 0
          type: number
          description: Value in percentage of booking that should be paid (not accumulative)
          example: 70
    PaymentRates:
      type: object
      properties:
        ratePaidOnBookingInPercentage:
          maximum: 100
          minimum: 0
          type: number
          description: Rate paid on booking in percentage
          example: 30
        ratesPerDate:
          type: array
          items:
            $ref: '#/components/schemas/PaymentRatePerDate'
      description: Payment schedule for the booking
  securitySchemes:
    api-key:
      type: apiKey
      name: api-key
      in: header