# Retrieve compulsory chargeable extras for a rate ID Fetch a list of compulsory chargeable extras associated with a specific rate code within the Property Management System (PMS). Compulsory extras are additional services or fees that must be included when booking a rate, such as cleaning fees, resort fees, or mandatory meal plans. This endpoint requires the as a path variable and a date range ( and ) as query parameters to determine the applicable extras for the specified period. The response includes details about each extra, including pricing, validity dates, and availability. This functionality is useful for ensuring that mandatory add-ons are applied correctly in booking workflows and pricing calculations. If the rate code does not exist or is invalid, an appropriate error response will be returned. Endpoint: GET /api/v3/extras/{rateId} Version: 3.0.4 Security: OAuth2 ## Path parameters: - `rateId` (integer, required) Unique identifier for the rate ID Example: "RACK" ## Query parameters: - `startDate` (string, required) Start date for the rate ID Example: "2022-01-01" - `endDate` (string, required) End date for the rate ID Example: "2022-01-31" ## Response 200 fields (application/json): - `content` (array) - `content.id` (integer) Unique identifier for the chargeable extra Example: 1 - `content.description` (string) Description of the chargeable extra Example: "Extra bed" - `content.product` (object) Product details - `content.product.id` (integer) Unique identifier of the product Example: 1 - `content.product.productCode` (string) Code of the product Example: "PROD-001" - `content.product.name` (string) Name of the product Example: "Product 1" - `content.billing_frequency` (string) Billing frequency of the chargeable extra Enum: "ONE_OFF", "DAILY", "WEEKLY", "MONTHLY" - `content.netPrice` (number) Net price of the chargeable extra Example: 100 - `content.vatProfile` (object) VAT profile - `content.vatProfile.id` (integer) The unique identifier of the VAT profile - `content.vatProfile.name` (string) The name of the VAT profile - `content.vatProfile.description` (string) The description of the VAT profile - `content.vatProfile.primaryProfile` (boolean) Indicates if this is the primary profile - `content.vatProfile.systemProfile` (boolean) Indicates if this is a system profile - `content.allowDescriptionAmendment` (boolean) Flag indicating if description amendment is allowed Example: true - `content.allowNetAmendment` (boolean) Flag indicating if net amendment is allowed Example: true - `content.selectableInIBE` (boolean) Flag indicating if selectable in IBE Example: true - `content.webDescription` (string) Web description of the chargeable extra Example: "Extra bed for children" - `content.perGuestFee` (boolean) Flag indicating if the fee is per guest Example: true - `content.webCategory` (object) Web category associated with the chargeable extra - `content.webCategory.id` (integer) The unique identifier of the category Example: 1 - `content.webCategory.name` (string) The name of the category Example: "Web Development" - `content.descriptionLang2` (string) Description in second language Example: "Cama extra" - `content.descriptionLang3` (string) Description in third language Example: "Lit supplémentaire" - `content.descriptionLang4` (string) Description in fourth language Example: "Letto extra" - `content.descriptionLang5` (string) Description in fifth language Example: "Zusatzbett" - `content.vatInclusive` (boolean) Flag indicating if VAT is inclusive Example: true - `content.building` (object) Building associated with the unit type - `content.building.id` (integer) Unique identifier of the building - `content.building.name` (string) Name of the building - `content.prepTimeUnit` (string) Preparation time unit for the chargeable extra Enum: "MINUTES", "HOURS", "DAYS", "WEEKS", "MONTHS" - `content.prepTimeValue` (integer) Preparation time value for the chargeable extra Example: 2 - `content.unitType` (object) Type summary of the unit - `content.unitType.id` (integer) Unique identifier of the unit type Example: 1 - `content.unitType.name` (string) Name of the unit type Example: "Studio Apartment" - `content.petIncluded` (boolean) Flag indicating if pets are included Example: true - `content.organisationSettings` (object) Organisation settings - `content.organisationSettings.id` (integer) The unique identifier of the organisation settings Example: 1 - `content.organisationSettings.name` (string) The name of the organisation Example: "Resharmonics" - `content.organisationSettings.currency` (object) The currency of the organisation - `content.organisationSettings.currency.id` (integer) Unique identifier of the currency - `content.organisationSettings.currency.name` (string) Name of the currency - `content.organisationSettings.currency.description` (string) Description of the currency - `content.organisationSettings.currency.symbol` (string) Symbol of the currency - `content.organisationSettings.currency.exchangeRate` (number) Exchange rate of the currency - `content.organisationSettings.currency.baseRate` (number) Base rate of the currency - `content.organisationSettings.currency.unit` (string) Unit of the currency - `content.organisationSettings.currency.autoUpdate` (boolean) Indicates if the currency is auto-updated - `content.organisationSettings.currency.primaryCurrency` (boolean) Indicates if this is the primary currency - `content.organisationSettings.currency.htmlSafeSymbol` (string) HTML safe symbol of the currency - `content.organisationSettings.country` (object) Data Transfer Object representing a Country entity in the Property Management System (PMS). - `content.organisationSettings.country.id` (integer) Unique identifier of the country - `content.organisationSettings.country.name` (string, required) Name of the country - `content.organisationSettings.country.sortOrder` (integer, required) Sort order of the country - `content.organisationSettings.country.countryCodeAlpha2` (string, required) Alpha-2 country code - `content.organisationSettings.country.countryCodeAlpha3` (string, required) Alpha-3 country code - `content.organisationSettings.country.countryCodeNumeric` (string, required) Numeric country code - `content.includedInRate` (boolean) Flag indicating if the chargeable extra is included in the rate Example: true - `content.includeAdults` (boolean) Flag indicating if adults are included Example: true - `content.includeChildren` (boolean) Flag indicating if children are included Example: true - `content.includeInfants` (boolean) Flag indicating if infants are included Example: true - `content.lengthOfStay` (number) Length of stay for the chargeable extra Example: 3 - `content.pricingModel` (string) Indicates which pricing model to be used for the room stay extra Enum: "UNIT_PRICE", "LINKED_TO_ROOM_RATE" - `content.percentageValue` (number) The percentage value of the room rate to be used if the room rate pricing model is enabled - `content.roomRateBasis` (string) Indicates if NET or GROSS room rate value is used if the room rate pricing model is enabled Enum: "GROSS", "NET" - `page` (object) - `page.size` (integer) - `page.totalElements` (integer) - `page.totalPages` (integer) - `page.number` (integer)