Holidu Extra Costs API

The Extra Costs API from Holidu — 1 operation(s) for extra costs.

Operations 2

GET /v2/apartments/extracosts Get the extra costs of an apartment #
POST /v2/apartments/extracosts Update the extra costs of an 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-extra-costs-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-extra-costs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Connectivity Extra Costs 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: Extra Costs
paths:
  /v2/apartments/extracosts:
    get:
      tags:
      - Extra Costs
      summary: Get the extra costs of an apartment
      operationId: getExtraCosts
      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 extra costs for apartment
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApartmentExtraCost'
        '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:
      - Extra Costs
      summary: Update the extra costs of an apartment
      operationId: updateExtraCosts
      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/ApartmentExtraCost'
        required: true
      responses:
        '200':
          description: Successful update of extra costs for apartment
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ApartmentExtraCost'
        '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:
    HoliduErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Error Text
          example: 'Invalid Json: Unexpected character'
    ExtraCostCondition:
      type: object
      properties:
        seasonApplicable:
          $ref: '#/components/schemas/SeasonApplicable'
        numberOfNights:
          $ref: '#/components/schemas/LengthOfStay'
      description: Conditions applicable for extra cost
    SeasonApplicable:
      type: object
      properties:
        onlyApplicableFrom:
          type: string
          description: Only applicable from date
          format: date
          example: '2020-08-01'
        onlyApplicableUntil:
          type: string
          description: Only applicable until date
          format: date
          example: '2021-04-30'
      description: Season for which extra cost is applicable
    ExtraCostPrice:
      required:
      - amount
      - type
      type: object
      properties:
        type:
          type: string
          example: PERCENTAGE
          enum:
          - PERCENTAGE
          - FIXED
        amount:
          type: number
          description: Price amount dependent on type
          example: 90.24
        currency:
          type: string
          description: Currency
          example: EUR
      description: Price configuration for extra cost
    ApartmentExtraCost:
      required:
      - basisOfCalculation
      - id
      - name
      - paymentTime
      - price
      - type
      type: object
      properties:
        id:
          type: string
          description: An identifier for this extra cost
          example: XYZ_123
        name:
          type: string
          description: Name of extra cost
          example: BEDLINEN
          enum:
          - FINAL_CLEANING
          - EXTRA_CLEANING
          - REFUNDABLE_SECURITY_DEPOSIT
          - TOURIST_OR_CITY_TAX
          - VAT_OF_RENTAL_PRICE
          - BOOKING_FEE
          - HYGIENE_SURCHARGE
          - PET
          - TRAVEL_INSURANCE
          - TOWEL
          - BEDLINEN
          - TOWEL_BEDLINEN_PACKAGE
          - KITCHEN_TOWELS
          - BEDLINEN_AND_BEDMAKING
          - BABY_BED
          - BABY_CHAIR
          - BABY_COT
          - BABY_BUGGY
          - BABY_HIGH_CHAIR
          - EXTRA_BED
          - HEATING
          - AIRCONDITION
          - FIREWOOD
          - ELECTRICITY
          - WATER
          - GAS
          - SAUNA
          - POOL
          - HOT_TUB
          - WASHING_MACHINE
          - BEACH_SERVICES
          - CLUB_CARD
          - INTERNET
          - PARKING
          - AIRPORT_SHUTTLE
          - BREAKFAST
          - SERVICE_COSTS
        basisOfCalculation:
          type: string
          description: How is cost is calculated
          example: PER_PERSON_PER_NIGHT
          enum:
          - PER_STAY
          - PER_PERSON_PER_NIGHT
          - PER_NIGHT
          - PER_PERSON
          - PER_UNIT
          - PER_UNIT_PER_NIGHT
        maximumCount:
          type: integer
          description: Maximum units that can be selected for this extra service if the service is selectable
          format: int32
          example: 1
        type:
          type: string
          description: Type of service associated with this extra cost
          example: MANDATORY
          enum:
          - MANDATORY
          - SELECTABLE
          - ON_USAGE
        paymentTime:
          type: string
          description: Payment time of extra cost
          example: ONSITE
          enum:
          - ON_BOOKING
          - WITH_RATES
          - ONSITE
        price:
          $ref: '#/components/schemas/ExtraCostPrice'
        condition:
          $ref: '#/components/schemas/ExtraCostCondition'
    LengthOfStay:
      type: object
      properties:
        fromStayLengthInNights:
          type: integer
          description: Based on the length of stay, applicable from night
          format: int32
          example: 1
        toStayLengthInNights:
          type: integer
          description: Based on the length of stay, applicable until night
          format: int32
          example: 7
      description: Extra cost only applicable if lengthOfStay shorter than
  securitySchemes:
    api-key:
      type: apiKey
      name: api-key
      in: header