Maxxton

Maxxton External API

1. Overview

The document comprises RESTful web services which refers to the methods (GET, POST, PUT, DELETE), endpoints of the APIs, required fields and explains what services consumes and produces.
It also tells what data is to be sent in request body and what will be returned in response body.
The dates that are being entered along with time depicts the UTC time zone and the one without time represents just that day.

1.1. Version information

Version : 1.0

1.2. Contact information

Contact : Maxxton Group
Contact Email : api@maxxton.com

1.3. URI scheme

Host : Test: https://api-test.maxxton.net , Production: https://api.maxxton.net
BasePath : /maxxton/v1
Schemes : HTTPS

1.4. Tags

  • Accommodation Types : A group of similar units

  • AddOn : Extras and products that can be booked with an accommodation type

  • AdminOrganisation : List of AdminOrganisation

  • Allotment : Guaranteed availability for a specific distribution channel

  • Amenity : Features or facilities available on a resort or an accommodation type

  • Authentication : Authorization Controller

  • Brands : Different labels used for marketing of an accommodation type

  • Contract Types : Type of agreement between the owner and the resort

  • Contracts : Formal legal agreement between the owner and the resort

  • Countries : List of countries.

  • Currency : List of currencies

  • Customer Status : Statuses given to customers as per customer’s reservation history

  • Customers : Guest who can book reservations

  • DistributionChannels : Channel through which reservations can be booked

  • Download files : Document Controller

  • Events : Events occurred in the system due to modifications of the entities

  • Facilities : Different labels used for facilities

  • Groups : Grouping different kind of entities

  • Housekeeping : Information related to housekeeping

  • Icals : Ical Controller

  • Infotexts : Information related to all the infotexts.

  • Languages : Available languages in the system

  • Ledgers : Ledger Controller

  • Locks : Lock Controller

  • Memos : Informative text on different entities

  • Offer : Discounts or special offers on accommodations

  • Owners : Someone who owns an accommodation

  • PredefinedMemos : Informative text on different entities

  • Rate Types : A group of different prices of an accommodation type

  • Regions : Defines region on a map

  • Rentability : Possible arrival and departure days

  • Representation : Defines accommodation type configuration valid for a distribution channel

  • Resellers : Agent who are selling accommodation types

  • Reservability : Number of units available

  • Reservations : Customer booking of an accommodation

  • Resorts : Group of accommodation types at the same location

  • Room Types : Defines type of room in an unit

  • Rooms : Defines a room in an unit

  • Send Methods : Send methods of reservation

  • Subjects : Subjects for accommodation types

  • Units : Physical accommodation where customer stays

1.5. Authentication

Maxxton External APIs are secure RESTful web services and authentication(OAuth2) is required to access them, user will be authenticated based on the token passed in the request.

1.5.1. Endpoint used to generate access token

POST /maxxton/v1/authenticate?grant_type=client_credentials&client_id={api username}&client_secret={api key}&scope={concern code}
Parameters
Name Description

grant_type

Authentication type, this is 'client_credentials' for API.

concern

3 letter code which specifies the environment used, usually an abbreviation of the clients name(deprecated in favor of scope).

scope

3 letter code which specifies the environment used, usually an abbreviation of the clients name(this can be found in the Maxxton software URL).

client_id

The unique client identifier to access the API. This can be found in the Maxxton software backoffice where API users are configured.

client_secret

The secret associated with client id to access the API. This can be found in the Maxxton software backoffice where API users are configured.

The response that can be returned are:

Responses
HTTP Code Description

500

Error occurred while processing

200

OK. Access token is generated which is used for further calls to authenticate.

After generating the token, the access token can be used by adding it to the header parameters with
key: Authorization and value: {token_type} {access_token}

  • The client_id and the client_secret will be provided by Maxxton/Maxxton client as part of API credentials.

  • Please contact the particular Maxxton client to request API credentials to access their Maxxton environment and data.

  • Concern or scope can be used for passing the concern parameter but scope is preferred as it is fully oauth2 compatible.

Note: Either of the two parameters i.e Concern or Scope is mandatory.

For more information: Login

1.6. API Pricing

The API costs are based on the number of requests per month, the first 750,000 requests per month(25,000 requests per day) are not charged. Subsequent requests are charged as per the API price calculator. The processes can be speeded up by making multiple API requests at the same time, this is called concurrent calls in the model. Concurrent calls have a bigger impact on the Maxxton API resources, therefore extra costs are charged.

Estimate standard API costs based on usage.

Requests per day Requests per month

0

Free

per
day
month * based on a 30 day month

1.6.1. Notes applicable to the API Pricing

  • The number of concurrent calls is limited to the maximum number per IP, by default this is 1. Please contact Maxxton if concurrent calls are requested.

  • The number of requests is not limited and will be charged based on actual usage.

  • Costs for the API accommodationtype and accommodationtype arrival range search are to agree on. Please contact Maxxton for more information and to enable this.

  • Costs only apply to the new Maxxton REST API.

  • The number of requests only applies to the production API.

  • The acceptance(api-test.maxxton.net) API can be freely used

  • Fair use policy applies to both production and acceptance API.

  • API Support is included for daily support questions

  • Development of new features and project guidance/management is charged per hour.

  • Clients can request new features to decrease the REST API usage. Maxxton will, commercially reasonable, develop new features on request to decrease the API usage.

1.6.2. Fair Use Policy

On our API we do not have a fixed restriction. However a Fair Use Policy applies to the usage of the API.

Normal usage is permitted. Excessive usage is not permitted. Excessive usage means, usage which has impact on our server performance or impact on other customers who use the API.

1.7. Filtering

Many calls contain filtering, this is a way to filter the output of the calls. In swagger(url can be found in documentation) it says filter parameter where this can be used. filtering means you can filter on any non-nested field in the output with the following features:

Definition Symbol Usage Result

Equals

:

?filter=name:bob

SELECT * FROM person WHERE name=bob or (in case of string value) WHERE name LIKE %bob%

Strict Equals

::

?filter=name::bob

SELECT * FROM person WHERE name=bob or (in case of string value) WHERE name LIKE bob

Not Equals

!:

?filter=name!:bob

SELECT * FROM person WHERE name!=bob or SELECT * FROM person WHERE name<>bob or (in case of string value) WHERE name NOT LIKE %bob%

Greater Than

>

?filter=age>30

SELECT * FROM person WHERE age>30

Greater Than Equals

>:

?filter=age>:30

SELECT * FROM person WHERE age>=30

Less Than

<

?filter=age<30

SELECT * FROM person WHERE age<30

Less Than Equals

<:

?filter=age <: 30

SELECT * FROM person WHERE age⇐30

These are the operators you can use in the filtering of the filter:

Definition Symbol Usage Result

Chain multiple filters (OR)

||

?filter=name:Bob||age=30

SELECT * FROM person WHERE name=Bob OR age=30

Creating a single filter or chain multiple(AND)

&

?filter=name:Bob&filter=age:30

SELECT * FROM person WHERE name=Bob AND age=30

1.8. Pagination

Pagination is used to divide large response into small response which leads minimizing the response time. General concept is separating a large page into small pages.
Most of the Maxxton External API endpoints follow pagination
You can control the number of results returned in a single request by specifying the page number and page size.
Page and Size are 2 request parameters that can be used with request to control pagination.

Name Description

page

Default page is 0, Page can be used to extract response of specific page.

size

Default size is 20, Size can be used to extract required no of elements per specific page.

With every response, there are few parameters in response that gives information about the pagination followed in request.

size Size value considered for request

number

Page no considered for request

numberOfElements

No of elements fetched in the response

totalElements

Total no of elements that can be fetched

totalPages

Total no of pages that can be requested

first

True if its a first page, else False

last

True if its a last page, else False

1.9. Sorting

Sorting is used to order the response based on the values of a particular field of the response. General concept is fetching a page/list of response in the ascending or descending order of the specified field.
Sorting is possible in all the endpoints where pagination is supported.

This can be done by specifying the sort request parameter with the field name and order of descending, as follows:
sort=fieldname,desc or sort=fieldname,asc

Name Description

sort

Default sorting is asc if only sort=fieldname is used, orders the response based on a particular field of the response.

With every sorted response, there are few parameters under the section sort at the end of page that gives information about the sorting followed in request.

direction The order of the sorting. ASC for ascending or DESC for descending

property

the fieldname in the response whose value was used for sorting the response

ignoreCase

whether casing of alphanumberic values was considered in sorting in case of string fields

nullHandling

enumeration for null handling hints that can be used in the sorting. typical values are NATIVE, NULLS_FIRST or NULLS_LAST

ascending

True if sorting was ascending, else False

descending

True if sorting was descending, else False

1.10. Date Fields

Following is the description of different date fields used in various domains of API endpoints.

Name Description

reservationDate

date the guest creates the reservation.

arrivalDate

date the guest arrives.

departureDate

date the guest leaves.

stayDateFrom

start of period within a period of the reservation(between and including arrival and departure date).

stayDateTo

end of period within a period of the reservation(between and including arrival and departure date).

1.11. Header

Header parameters contain information that are an important part of the API request and response as they represent the meta-data associated with the API request and response.
Following header parameters can be used with Maxxton APIs:

Name Description Example

locale

This header can be passed in the request to filter all the translations in the response in any specific language. The user can pass the language code as value of the locale header to filter the translations. The value of the locale header can also be passed in the following format "en_US" (language code followed by country code).

locale=en
OR
locale=en_US

x-show-archived

This header can be used to get archived data in the response. The user can pass "true" as value of the header to view the archived data in the response and if the value of this header is passed as "false" then the archived data is not displayed in the response.

x-show-archived=true
OR
x-show-archived=false

1.12. Error Codes

Following error codes are available in response of Maxxton APIs:

Error Code Description HTTP Status

ThirdParty-101

Resource not found

404

ThirdParty-102

Unit not found

404

ThirdParty-103

Locks not found

404

ThirdParty-104

Unable to load addresses

500

ThirdParty-105

Offer is not found

404

ThirdParty-107

Distribution channel id is not valid or is null

400

ThirdParty-108

Manager id is not found.

400

ThirdParty-109

Accommodation type is not found

404

ThirdParty-110

Representation is not found

404

ThirdParty-111

add-ons is not found

404

ThirdParty-112

Group type is not correct.

400

ThirdParty-113

Wrong input

400

ThirdParty-114

Unable to generate or use property descriptor for field

500

ThirdParty-115

Resort not found

404

ThirdParty-116

Unable to filter translation

500

ThirdParty-117

Year paramater is missing

400

ThirdParty-118

Configuration is missing

500

ThirdParty-122

The category code does not exist or not equivalent to the token reservation category or not linked with input distribution channel

400

ThirdParty-123

The distribution channel code does not exist or null

400

ThirdParty-124

The subject does not exist with subjectId or null

400

ThirdParty-125

The resource does not exist with resourceId

400

ThirdParty-126

Customer details not provided.

400

ThirdParty-127

There is no availability for the given criteria

400

ThirdParty-128

Status should be QUOTATION or OPTIONAL

400

ThirdParty-129

The request has an incorrect body

400

ThirdParty-130

Reservation does not exist.

404

ThirdParty-131

Rate type does not exist or null.

404

ThirdParty-132

No default rate type is selected for given distribution channel.

404

ThirdParty-133

You are not allowed to create reservation with given distribution channel code.

400

ThirdParty-134

The header IF_MODIFIED_SINCE is missing.

400

ThirdParty-135

Internal server error occurred.

500

ThirdParty-136

Missing or invalid parameter

400

ThirdParty-137

Reservation category not found.

404

ThirdParty-138

Accommodation does not exists.

404

ThirdParty-139

Invalid subject

400

ThirdParty-140

Property preference not found.

400

ThirdParty-141

No choice found for the given criteria.

400

ThirdParty-142

No customer found for the customer id

400

ThirdParty-143

No modified records found.

404

ThirdParty-144

start/end date should not be null and startDate should be less than endDate and the period should be in between reservation period.

400

ThirdParty-145

Additions not found.

400

ThirdParty-146

Quantity should not be null, less than or equal to 0.

400

ThirdParty-147

Unable to retrieve turnover for the reservation

404

ThirdParty-148

The unit does not exist with unitId.

400

ThirdParty-149

The given addition criteria does not match or addition’s show moment is incorrect.

400

ThirdParty-150

Accommodation not available.

400

ThirdParty-151

Distribution channel code is not valid or is null

400

ThirdParty-152

Section parameters are invalid in batch request

400

ThirdParty-153

Capacities are not configured on accommodationtype.

404

ThirdParty-154

The incorrect format of input parameter.

400

ThirdParty-155

The quantiy and price should not be passed with unitId

400

ThirdParty-156

Resource quantity is not valid or can not be changable

400

ThirdParty-157

Reservation can not be updated because of some internal error

400

ThirdParty-158

The header IF_MODIFIED_SINCE is incorrect.

400

ThirdParty-159

The date in IF_MODIFIED_SINCE should not be greater than current date

400

ThirdParty-160

Modify the time stamp format. Should be : EEE, dd MMM yyyy HH:mm:ss

400

ThirdParty-161

No currency found for the currency id

404

ThirdParty-162

Concern or scope not found

400

ThirdParty-163

Required parameter is missing in new-reservation customer request body

400

ThirdParty-164

Language not available for Locale or Locale is incorrect

400

ThirdParty-165

Invalid region id

404

ThirdParty-166

Brand not found

404

ThirdParty-167

start/end or actual start/end date can not be update for the reserved resource

400

ThirdParty-168

Invalid ownerId

404

ThirdParty-169

The distribution channel does not exist

404

ThirdParty-170

No data found

404

ThirdParty-171

Invalid ownerGroupId

404

ThirdParty-172

Requested page size is invalid

400

ThirdParty-173

Invalid memoCategoryId

400

ThirdParty-174

Seasonality not found

404

ThirdParty-175

Either Fiscal year or startDate/endDate allowed

400

ThirdParty-176

Resource type is invalid

400

ThirdParty-177

the url passed is invalid

400

ThirdParty-178

Given fiscal year is not configured

400

ThirdParty-179

Update reservation request has invalid reservation status

400

ThirdParty-180

Payer type is invalid

400

ThirdParty-181

ArrivalDate field cannot be null or empty

400

ThirdParty-182

Arrival date passed in invalid

400

ThirdParty-183

NumberOfDaysInResult is mandatory, cannot be null or greater than 30

400

ThirdParty-184

Invalid room id

404

ThirdParty-185

ResourceIds is mandatory, cannot be null

400

ThirdParty-186

Invalid preference type

400

ThirdParty-187

Invalid reservation status

400

ThirdParty-188

Maximum size of paged response is limited to 2000

400

ThirdParty-189

Request body can’t be empty or blank with post method

400

ThirdParty-190

You have insufficient permission to update the field provided in request body

403

ThirdParty-191

Customer not found

404

ThirdParty-192

Resource does not allow price change

400

ThirdParty-193

Reseller not found

404

ThirdParty-194

Reservation status cannot be changed as a unit is not available.

400

ThirdParty-195

Cannot change the reservation status as the reservation config is missing.

400

ThirdParty-196

Invalid countryId.

400

ThirdParty-197

Quantity too high for addition.

400

ThirdParty-198

Quantity too low for addition.

400

ThirdParty-199

Group type is invalid

400

ThirdParty-200

Either reservationIds or customerIds should be passed in request with accommodationKindIds.

400

ThirdParty-201

The startDate and endDate of accommodation or special cannot be updated.

400

ThirdParty-202

Only one resourceId could be passed in resourceIds.

400

ThirdParty-203

Invalid field name passed in the request body.

400

ThirdParty-204

Missing required parameter.

400

ThirdParty-205

DateRange is exceeded limit.

400

ThirdParty-206

The amenity passed in preferences is not valid for reservation stay.

400

ThirdParty-207

Accommodation is of work order type.

400

ThirdParty-208

AdditionResourceId is either invalid or is not available for reservation stay.

400

ThirdParty-209

ResourceId is invalid

400

ThirdParty-210

Incorrect reservedResourceId for reservation.

400

ThirdParty-211

Invalid titleId passed in the request.

400

ThirdParty-212

Price engine General Error.

400

ThirdParty-213

contractTypId passed in the request is invalid.

400

ThirdParty-214

Contract can be created for either resourceId or unitId

400

ThirdParty-215

Credentials null or invalid.

400

ThirdParty-216

Representation for the resourceIds and distribution channel is archived.

400

ThirdParty-217

Invalid rentability period.

400

ThirdParty-218

Record already exists with same criteria, but with different priority value and rate type id

400

ThirdParty-219

Error while creating addition.

400

ThirdParty-220

Total number of subjects and travel parties doesn’t match.

400

ThirdParty-221

Subjects or travel parties should be passed in the request to make reservation.

400

ThirdParty-222

The dateMargin parameter cannot be used in combination with includeAllPrices parameter.

400

ThirdParty-223

Travel parties should be passed with travel insurance addon.

400

ThirdParty-224

Supplier addition not available.

400

ThirdParty-225

Invalid amenityId.

400

ThirdParty-226

Value field passed in the request does not match amenity type.

400

ThirdParty-227

Only one type of subject list is allowed for insertion at a time.

400

ThirdParty-228

Invalid powerPlayGroupId passed in the request.

400

ThirdParty-229

Invalid offerType passed in the request.

400

ThirdParty-230

The startDate should be less than endDate.

400

ThirdParty-231

Cannot create reservation with current GDPR access.

401

ThirdParty-232

Voucher was not found.

400

ThirdParty-233

Either offerCode or voucherCode should be passed.

400

ThirdParty-234

Voucher is not valid for this period.

400

ThirdParty-235

Voucher is blocked.

400

ThirdParty-236

Voucher is already redeemed.

400

ThirdParty-237

Voucher is not allowed on this distribution channel.

400

ThirdParty-238

Voucher is not allowed with this accommodation type and period.

400

ThirdParty-239

There is no valid offer/resource linked to this voucher.

400

ThirdParty-240

Invalid preferenceId.

400

ThirdParty-241

Modification not allowed.

400

ThirdParty-242

Checked out reservation cannot be modified from API.

401

ThirdParty-243

Failed to generate JWT token response.

500

ThirdParty-244

Language passed in request is incorrect.

400

ThirdParty-245

Authentication token created with invalid api_key.

400

2. Swagger UI

2.1. Go to the Swagger UI

Swagger documentation can be used for executing the calls as well apart from the available endpoint list and descriptions.
NOTE: The Swagger UI Rest client

3. Flows

3.1. Maxxton environments

Maxxton works using a DTAP(Development, Testing, Acceptance, Production) approach. For this there are 4 environments available and the code is promoted from the left to the right. The staging is not available for all clients. In case no staging is available the test can be used.

The development environment is not externally available and only available to the Maxxton developers.

Both staging and production environments use the same API URLs because it’s using the same infrastructure with the difference that the database used is a test/staging database on staging.

Maxxton environment flow overview
Figure 1. Maxxton environments

3.1.1. Environment refresh

The Test environment can be refreshed with production data. In this case all test environment data will be overriden with the data from the production environment, including the API users.
For security reasons the API keys are excluded and the test API keys which existed before the refresh are kept during the refresh process. This means the API keys from the production and test environment will always be different and never overriden.
However the API users are the same. In case no api user is available on the production environment, the API key on the test environment is removed by the refresh process. This means after a refresh, users who don’t have access to the production environment will also not have access to the test environment.
This can result in a scenario where it will no longer be possible to login to the test environment. This can be solved by creating a new API user and API key after the refresh process is finished. If the user already existed on the production environment and no API key was available on the test environment a new API key has to be generated as well to gain access.
Contact the Maxxton client to provide you with new API details if necessary.

3.2. Events Flow

Any change(creation, deletion or modification) made in any of the entities will generate events, which are stored and can be fetched using the Events endpoint. Below are the events generated with their description. The details of the entity along with the changes can be fetched through separate endpoints mentioned for every event type below.

Events are not logged for entity records which become invalid or inactive after a given date.
For ex. validTo date in cashflowrule. In this case, no events will be logged for cashflowrule entity, after the respective validTo date of that cashflowrule is passed.

3.2.1. Events Generated

1) ACCOMMODATION_TYPE_EVENT

Any change made to the accommodationtype, which includes creation, modification or deletion of accommodationtype or any of its entities like address, images, amenities, capacities etc. will generate an ACCOMMODATION_TYPE_EVENT. In case of an ACCOMMODATION_TYPE_EVENT, the entity id logged will be the resourceId of the accommodationtype that was changed.

To refresh the data the following endpoint can be used with the resourceId fetched from the event endpoint:

  • GET: maxxton/v1/accommodationtypes/{resourceId}/details

To refresh specific data following endpoints can be used:

  • GET: maxxton/v1/accommodationtypes/{resourceId}

  • GET: maxxton/v1/accommodationtypes/{resourceId}/capacities

  • GET: maxxton/v1/accommodationtypes/{resourceId}/images

  • GET: maxxton/v1/accommodationtypes/{resourceId}/amenitylinks

To refresh the data for multiple accommodationtypes at the same time the resourceId can be combined using the following endpoint:

  • GET: /maxxton/v1/accommodationtypes?filter=resourceId:[resourceId1,resourceId2,resourceId3…​]

2)ADDITION_EVENT

Any change made to the additions, which includes creation, modification or deletion of an addition will generate an ADDITION_EVENT. The entity id logged will be the resourceId of the accommodationtype, addition or offer on which the addition was added.

To refresh the data the following endpoints can be used with the resourceId fetched from the event endpoint:

  • GET: maxxton/v1/accommodationtypes/{resourceId}/additions

  • GET: maxxton/v1/offers/{resourceId}/additions

  • GET: maxxton/v1/accommodationtypes/additions?filter=resourceId:[resourceId1,resourceId2,resourceId3…​]

  • GET: maxxton/v1/offers/additions?filter=resourceId:[resourceId1,resourceId2,resourceId3…​]

3) ADDON_EVENT

Any changes which includes creation, modification or deletion of extras or products will generate an ADDON_EVENT. The entity id logged will be the resourceId of the add-on that was changed.

To refresh the data the following endpoint can be used with the resourceId fetched from the event endpoint:

  • GET: maxxton/v1/add-ons/{resourceId}

4) AVAILABILITY_EVENT

Changes in the availability of resources will generate an AVAILABILITY_EVENT. The event is created once the available is processed in the availability indexes and available from below defined endpoints. The following scenarios will generate an availability event:

  • When the prices or availability of a certain accommodation type changes this will be processed in the availability index once running. When this is processed an availability event is created

  • When the prices or rentability of an offer change this will be processed in the availability index once running. When this is processed an availability event is created for all the accommodation types for which this offer is applicable.

  • When the last unit of an accommodation type is booked, it is removed from the availability index right away and an availability event is created near real-time.

The entity id logged will be the resourceId of the accommodation type whose availability was changed.

To refresh the data the following endpoint can be used with the resourceId fetched from the event endpoint:

  • GET: maxxton/v1/accommodationtypes/availability

5) CUSTOMER_EVENT

Any change made to the customers, which includes creation, modification or deletion of a customer or any of its fields will generate CUSTOMER_EVENT. The entity id logged will be the customerId of the customer that was changed.

To refresh the data the following endpoints can be used with the customerId fetched from the event endpoint:

  • GET: maxxton/v1/customers/{customerId}

  • GET: maxxton/v1/customers/{customerId}/communications

  • GET: maxxton/v1/customers/{customerId}/files

To refresh the data for multiple customers at the same time the customerIds can be combined using the following endpoint:

  • GET: maxxton/v1/customers?filter=customerId:[customerId1,customerId2,customerId3…​]

The customer event also contains events about merged customer by the deduplication script running in the Maxxton system.
This is indicated by the "entityAction" MERGE and will provide the customer id which is removed in the "oldEntityId" field and the customer id where the data is merged to(the customerId it has become) in the "entityId" field.

6) DISTRIBUTIONCHANNEL_EVENT

Any change made to a distribution channel, which includes creation, modification or deletion of a distribution channel or any of its fields will generate DISTRIBUTIONCHANNEL_EVENT. The entity id logged will be the distributionChannelId of the distribution channel that was changed.

To refresh the data the following endpoints can be used with the distributionChannelId fetched from the event endpoint:

  • GET: maxxton/v1/distributionchannels/{distributionChannelId}

To refresh the data for multiple distribution channels at the same time the distributionChannelIds can be combined using the following endpoint:

  • GET: maxxton/v1/distributionchannels?filter=distributionChannelId:[distributionChannelId1,distributionChannelId2,distributionChannelId3…​]

7) IMPLY_EVENT

Any change made to the implies, which includes creation, modification or deletion of the imply of an accommodationtype, unit, add-on or offer will generate an IMPLY_EVENT. The entity id logged will be the resourceId of the accommodationtype, add-on or offer. In case of a unit it will be unitId. Based on the entityType it can be identified if it’s an accommodationtype, unit, add-on or offer.

To refresh the data the following endpoints can be used with the resourceId fetched from the event endpoint:

  • GET: maxxton/v1/accommodationtypes/{resourceId}/implies

  • GET: maxxton/v1/add-ons/{resourceId}/implies

  • GET: maxxton/v1/offers/{resourceId}/implies

  • GET: maxxton/v1/units/{unitId}/implies

8) OFFER_EVENT

Any change made to the offers, which includes creation, modification or deletion will generate an OFFER_EVENT. The entity id logged will be the resourceId of the offer that was changed.

To refresh the data the following endpoint can be used with the resourceId fetched from the event endpoint:

  • GET: maxxton/v1/offers/{resourceId}

  • GET: maxxton/v1/offers?filter=resourceId:[resourceId1,resourceId2,resourceId3…​]

9) OWNER_EVENT

Any change made to the owners, which includes creation, modification or deletion of an owner or any of its fields will generate OWNER_EVENT. The entity id logged will be the ownerId of the owner that was changed.

To refresh the data the following endpoints can be used with the ownerId fetched from the event endpoint:

  • GET: maxxton/v1/owners/{ownerId}

To refresh the data for multiple owners at the same time the ownerIds can be combined using the following endpoint:

  • GET: maxxton/v1/owners?filter=ownerId:[ownerId1,ownerId2,ownerId3…​]

10) RATE_EVENT

Any change made to the rates, which includes creation, modification or deletion of the rate of an accommodationtype, add-on or offer will generate a RATE_EVENT. The entity id logged will be the resourceId of the accommodationtype or offer. Based on the entityType it can be identified if it’s an accommodationtype or offer.

To refresh the data the following endpoints can be used with the resourceId fetched from the event endpoint:

  • GET: maxxton/v1/accommodationtype/{resourceId}/rates

  • GET: maxxton/v1/offers/{resourceId}/rates

11) RENTABILITY_EVENT

Any change made to the rentability, which includes creation, modification or deletion of the rentability of an accommodationtype or offer will generate a RENTABILITY_EVENT. The entity id logged will be the resourceId of the accommodationtype, add-on or offer. Based on the entityType it can be identified if it’s an accommodationtype or offer.

To refresh the data the following endpoint can be used with the resourceId fetched from the event endpoint:

  • GET /maxxton/v1/rentability/config?resourceId={resourceId}

  • GET /maxxton/v1/rentability/stays?resourceId={resourceId}&distributionChannelId={distributionchannelId}

12) RESERVABILITY_EVENT

Any change made to the reservability, which includes creation, modification or deletion in the reservability of an accommodationtype, unit, add-on or offer will generate RESERVABILITY_EVENT. The entity id logged will be the resourceId of the accommodationtype, add-on or offer. In case of a unit it will be unitId. Based on the entityType it can be identified if it’s an accommodationtype, add-on, offer or unit,.

To refresh the data the following endpoints can be used with the resourceId fetched from the event endpoint:

  • GET: maxxton/v1/resourcereservability?resourceId={resourceId}

  • GET: maxxton/v1/unitreservability?unitId={unitId}

13) RESERVATION_EVENT

Any change made to the reservations, which includes creation, modification or deletion in the reservation will generate RESERVATION_EVENT. The entity id logged will be the reservationId of the reservation that was changed.

To refresh the data the following endpoint can be used with the resourceId fetched from the event endpoint:

  • GET: maxxton/v1/reservations/{reservationId}/details

To refresh specific data following endpoints can be used:

  • GET: maxxton/v1/reservations/{reservationId}

  • GET: maxxton/v1/reservations/{reservationId}/preferences

  • GET: maxxton/v1/reservations/{reservationId}/bills

  • GET: maxxton/v1/reservations/{reservationId}/content

  • GET: maxxton/v1/reservations/{reservationId}/subjects

To refresh the data for multiple reservations at the same time the reservationIds can be combined using the following endpoint:

  • GET: maxxton/v1/reservations?filter=reservationId:[reservationId1,reservationId2,reservationId3,…​]

14) RESORT_EVENT

Any change made to the resorts, which includes creation, modification or deletion of the resort will generate RESORT_EVENT. The entity id logged will be the resortId of the resort that was changed.

To refresh the data the following endpoint can be used with the resortId fetched from the event endpoint:

  • GET: maxxton/v1/resorts/{resortId}/details

To refresh specific data following endpoints can be used:

  • GET: maxxton/v1/resorts/{resortId}

  • GET: maxxton/v1/resorts/{resortId}/amenitylinks

  • GET: maxxton/v1/resorts/{resortId}/subjects

To refresh the data for multiple resorts at the same time the resortIds can be combined using the following endpoint:

  • GET: maxxton/v1/resorts?filter=resortId:[resortId1,resortId2,resortId3,…​]

15) UNIT_EVENT

Any change made to the units, which includes creation, modification or deletion of the unit will generate UNIT_EVENT. The entity id logged will be the unitId of the unit that was changed.

To refresh the data the following endpoint can be used with the unitId fetched from the event endpoint:

  • GET: maxxton/v1/units/{unitId}/details

To refresh specific data following endpoints can be used:

  • GET: maxxton/v1/units/{unitId}

  • GET: maxxton/v1/units/{unitId}/capacities

  • GET: maxxton/v1/units/{unitId}/amenitylinks

To refresh the data for multiple units at the same time the unitIds can be combined using the following endpoint:

  • GET: maxxton/v1/units?filter=unitId:[unitId1,unitId2,unitId3,…​]

16) ALLOTMENT_EVENT

Any change made to the allotments, which includes creation, modification or deletion of the allotment will generate ALLOTMENT_EVENT. The entity id logged will be the resourceId of the accommodationtype whose allotment was changed.

To refresh the data the following endpoint can be used with the resourceId fetched from the event endpoint:

  • GET: /maxxton/v1/accommodationtypes/{resourceId}/allotments

To refresh the data for multiple accommodationtypes at the same time the resourceIds can be combined using the following endpoint:

  • GET: /maxxton/v1/allotments?filter=resourceId:[resourceId1,resourceId2,resourceId3…​]

3.3. Reservation Flow

A reservation is basically used for booking or reserving an accommodationtype by a guest. Reservations include reserving a particular type of accommodationtype for a particular guest for a given period of time.

  1. Availability and prices

    There are 2 options to fetch the availability. One is to call the Maxxton API realtime and show it on the website, this also provides filter possibilities. Option 2 is to fetch all possible availabilities and prices and popuplate your own availability and price index to search offline on the external application.

    Option 1:

    Using the availability search you can search what accommodation types are available and for which periods. This endpoint also makes it possible to filter the search results and provide you with all possible filter options.

    There are two search endpoints for different purposes:

    POST /maxxton/v1/accommodationtypes/search
    POST /maxxton/v1/accommodationtypes/arrivalrangesearch

    Check the accommodation type search and arrival range search endpoints for details.

    Option 2:

    Using the availability call you can fetch all available stays and prices for all accommodation types. This endpoint is usually used to fill a dedicated availability/price index at the third party side.

    POST /maxxton/v1/accommodationtypes/availability

    Check the accommodation type availability endpoint for details.

    Optional: In case you also would like to fetch all the mandatory costs(implies) to add this to your index the following call can be used:

    POST /maxxton/v1/accommodationtypes/availability/implies

    Check the accommodation type availability implies endpoint for details.

  2. Accommodation types configuration/master data

    Using the accommodation type endpoints you can get the accommodation type configuration i.e. translatable name and descriptions, units, amenities, images etc. It is also possible to filter the response.

    There are multiple endpoints available for different purposes below two will contain most information regarding acommodation types and units:

    GET /maxxton/v1/accommodationtypes/{resourceId}/details
    GET /maxxton/v1/units/{unitId}/details

    If only specific data is needed the following endpoints can be used:

    GET /maxxton/v1/accommodationtypes
    GET /maxxton/v1/units
    GET /maxxton/v1/accommodationtypes/{resourceId}/amenitylinks
    GET /maxxton/v1/accommodationtypes/{resourceId}/images

    Check full list of accommodation type and related endpoints here.

  3. Reservation proposal

    POST: https://api.maxxton.net/maxxton/v1/reservations/proposals

    When a possibility is chosen based on the search endpoints a reservation proposal can be created. A reservation proposal provides the proposal on reservation costs for the specified criteria in the request and doesn’t create an actual reservation in the system.

    It is used to validate if the accommodation type is available for the specified arrival date and duration.

    The reservation id and reservation number is not generated since no reservation is created. The proposal also provides you with all possible additions that can be added in the reservation. It also include instalments as per the reservation bill.

    This proposal can be used multiple times, till you are totally fine with the reservation, nothing is saved in our system and no reservation costs apply by using this.

    Check the reservation proposal endpoint for details.

  4. NewReservation

    POST: https://api.maxxton.net/maxxton/v1/reservations

    When the reservation is correct and you have checked this with the proposal call, you can use the new reservation endpoint to create an actual reservation.

    At this moment the new reservation is stored in our system and the reservation id and reservation number is generated.

    • Once the request is sent by the user, the request is validated as per the availability of the resource for which the reservation needs to be created. The mandatory parameters that needs to be passed in the new reservation request are as follows:

      • accommodationTypes: the details of the accommodationtype on which reservation is to be made

        • duration: the duration for which a user wants to make a reservation and the duration should be passed in days ex: 7.

        • resourceId: unique id associated with the accommodationtype.

        • subjects: details related to the subjects who will come for stay in an accommodationtype for whom reservation is to be created

          • persons: details related to the persons for whom the accommodationtype is booked in reservation.

            • age: age of the person

            • quantity: total number of persons for whom the accommodationtype is booked in reservation.

      • categoryCode: unique code associated with reservation category.

      • distributionChannelCode: unique code associated with distribution channel.

      • customer: details of guest doing the booking. Or, you can use customerId field instead of customer in case you have customerId of the guest who is doing the booking.

    • If the resource is available as per the request criteria, then the reservation will be created successfully and the status of the reservation can be provisional, optional, quotation, or request reservation(see reservation status flow, refer point 6 below).

      Check the new reservation endpoint for details.

  5. Update reservation

    The reservation status can be updated to different status using:

    PUT: https://api.maxxton.net/maxxton/v1/reservations/{reservationId}

    The status which can be updated to different status. Please refer to below status chart:

    • QUOTATION(-5) → CONFIRM(will result in PROVISIONAL(12) or DEFINITIVE(21)), DECLINE(-10)

    • OPTIONAL(11) → CONFIRM(will result in PROVISIONAL(12) or DEFINITIVE(21)), DECLINE(-10)

    • REQUEST(10)→DECLINE(-10), CONFIRM(will result in PROVISIONAL(12) or DEFINITIVE(21))

    • PROVISIONAL(12) → CANCEL(-12), DECLINE(-10)

    • DEFINITIVE(21)→CANCEL(-12), CHECKED_IN(31)

    • CHECKED_IN(31)→CHECKED_OUT(41).

      The user can change the status of the reservation as per the above status flow specified.

      It’s also possible to update the expectedArrivalDateTime and expectedDepartureDateTime, the value should be passed in the below format ,

      'YYYY-MM-DDThh:mm:ss'

      The above fields are mainly used by the receptionist of the resort, by maintenance department and housekeeping.

      Check the update reservation endpoint for details.

  6. Reservation status flow overview

    After creating a reservation it start with the INIT (an initial reservation) status. After completing the reservation, having added a customer and some add-ons, there are multiple options. We can update it to DELETED(these reservations are removed regularly), to OPTIONAL(which is a temporary confirmation) or PROVISIONAL(a confirmed reservation without a payment). Both OPTIONAL and PROVISIONAL get a reservation number assigned. This means they may no longer be deleted from the system, for financial reasons.

    Reservation starts with OPTIONAL, QUOTATION, PROVISIONAL or DEFINITVE status when it is confirmed through the API.

    OPTIONAL: will go to EXPIRED if not confirmed (after x number of hours/days based on configuration) or to PROVISIONAL/DEFINITIVE based on the API user configuration settings if confirmed. With this status the accommodation type price and availability are guaranteed for the reservation.

    QUOTATION: will go to the EXPIRED if not confirmed after x number of hours/days based on configuration or to PROVISIONAL/DEFINITIVE based on API user if confirmed. With this status the accommodation type rates are guaranteed for the reservation period and not the availability. So, some other guest can also book the reservation and then it is no more available to the guest who created a QUOTATION reservation.

    PROVISIONAL: A confirmed booking without a payment.

    DEFINITIVE: If a payment is made(partial or full), a PROVISIONAL reservation will be changed to DEFINITIVE. When the guest arrives it will change to CHECKED_IN and finally to CHECKED_OUT when the guest leaves.

    If a guest decides not to use the reservation, it can be changed from PROVISIONAL to DECLINED or to CANCELLED and from DEFINITIVE to CANCELLED.

    DECLINED: There are no costs for the guest and the reservation is no more available.

    CANCELLED: It implies that some sort of payment is involved. That is why DEFINITIVE can only go to CANCELLED(since something was paid already). From CANCELLED it can go to DEF_CANCELLED(if the guest decides to cancel absolutely), or back to either PROVISIONAL or DEFINITIVE (depending on payments made) if the guest opt for reservation again.

Reservation status flow overview
Figure 2. Reservation status flow overview

3.4. Ingenico Integration

Maxxton is using Ingenico as a default PSP(Payment service provider). Because of this, the payments can be automatically added to a reservation made in the Maxxton system using an integration that is already in place, however, to do this a couple of additional parameters is needed.

The integration works as follow

Ingenico integration overview
Figure 3. Ingenico integration overview

1) The flow 1 in the above diagram is the redirect URL which needs to be created by the company that is creating the booking module or website. This should have the following parameters to work properly.

POST https://secure.ogone.com/ncol/prod/orderstandard_utf8.asp

POST request
Headers:
Content-Type: application/x-www-form-urlencoded

Request body(key-value pair):
PSPID=ClientPSPID //Ingenico PSPID to use
orderID=00019026850000_827efb46dc7bb2f //the order id should have the following structure: reservationNumber_anyRandomNumber
amount=1234 //the amount to be paid in the below-defined currency in cents(for example 12,35 should be defined as 1235)
currency=EUR //currency of the payment
language=nl_ //The language the Ingenico Hosted Payment Page is displayed to your customer. The value is a combination of ISO 639-1 (language) and ISO 3166-1 (country) for example: nl_NL, en_US, fr_FR
EMAIL=customer@maxxton.com //email of the customer
SHASign=0b105725955aa9e0cba8d9906ccd64d66b0ca422 //see Ingenico backoffice how this is created and what needs to be used here
accepturl=https://book.maxxton.com/reservation/success //URL where the customer should be redirected to in case of a successful payment
declineurl=https://book.maxxton.com/reservation/cancel //URL where the customer should be redirected to in case of a declined payment
exceptionurl=https://book.maxxton.com/reservation/cancel //URL where the customer should be redirected to in case of a failed payment
cancelurl=https://book.maxxton.com/reservation/cancel //URL where the customer should be redirected to in case of a canceled payment
PARAMPLUS=distributionchannelId%3D51142%26reservationId%3D4181444%26employeeId%3D80041%26concernId%3D22 //mandatory parameters which will be used by Maxxton to process the payment on the proper reservation.
a) distributionchannelId: id of the distribution channel where the reservation is created for, this can be found in the response of the reservation confirm call
b) reservationId: id of the reservation that was just created to make the payment for, this can be found in the response of the reservation confirm call
c) employeeId: id of the employee which should add the payment in the Maxxton system, this can be found in the response "client_id" of the REST API authentication call
d) concernId: id of the concern/environment of the Maxton client, this can be found in the response "concern_id" of the REST API authentication call
TP=https://book.maxxton.com/ingenico/template.html //the URL to the Ingenico template to be used, this is optional.

2) This is the redirect from Ingenico to the website, see Ingenico documentation for all possible parameters. This can be used by the booking module or website to provide feedback that the payment has been processed.

3) The asynchronous callback from Ingenico to Maxxton. There is no additional development needed here and this will work right away if the correct structure for the redirect URL(number 1) is used. In the Ingenico backoffice the "URL of the merchant’s post-payment page" should be configured and point to Maxxton(this is already configured for existing Maxxton clients using Ingenico most of the time).

4. Entity Relations

4.1. Resort, Accommodation Type, Unit

  • Resort(called "location" in Maxxton Software):
    A resort is group of accommodation types at the same location which provides an array of accommodation types typically including entertainment and recreational activities.
    A resort may contain one or multiple accommodation types.

  • Accommodation Type:
    An accommodation type is group of similar units, here the units are configured that defines type of unit(Room, Bungalow, Chalet etc) and other possible configuration(Representation, Capacity, Cashflow, Rentability, Reserability, Amenities etc), which can be done per resort or condo.
    An accommodation type may contain one or multiple units.

  • Unit:
    A room, group of rooms, or bungalow in which someone may live or stay, it can be a single room, bungalow, chalet etc.

Diagrammatic representation of Resort, Accommodation Types, Units:

Resort, Accommodation types and Units

4.2. Resources and reserved resources

In the Maxxton system, there are many resources(items) available, these resources can be of multiple types. For example Accommodation type, add-on, or offers are all resources. These resources can be booked while creating a reservation, in this case, a resource is added to the reservation which is called a reserved resource. This is basically a booked version of the actual resource. A resource is unique in the system and used across multiple reservations, a reserved resource is unique to the reservation.

Diagrammatic representation of Resources and reserved resources:

Resources and reserved resources

5. Resources

5.1. Accommodation Types

A group of similar units

5.1.1. Add new accommodation type

POST /maxxton/v1/accommodationtypes
Description

Add the new accommodation type.The details are to be mentioned in the resquest body.

Parameters
Type Name Description Schema

Body

accommodationType
required

accommodationType

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while adding new accommodation type.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes
Request body
{
  "accotypeKindId" : 0,
  "address" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "brandId" : 0,
  "code" : "string",
  "nrOfBathrooms" : 0.0,
  "nrOfBedrooms" : 0.0,
  "origin" : "string",
  "originId" : "string",
  "parentId" : "string",
  "poolWeightage" : 0,
  "priority" : 0,
  "resortId" : 0,
  "translations" : [ {
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "languageId" : 0,
    "name" : "string",
    "shortDescription" : "string"
  } ]
}
Example HTTP response
Response 200
{
  "accommodationTypeKindCode" : "string",
  "accotypeKindId" : 0,
  "address" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "addressId" : 0,
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "archivedFrom" : "string",
  "brand" : "string",
  "code" : "string",
  "dependsOnLedgerGroup" : true,
  "hasObjects" : true,
  "ledgerId" : 0,
  "nrOfBathrooms" : 0.0,
  "nrOfBedrooms" : 0.0,
  "numberOfPersons" : 0,
  "origin" : "string",
  "originId" : "string",
  "parentId" : 0,
  "path" : "string",
  "powerplayGroupId" : 0,
  "priority" : 0,
  "resortId" : 0,
  "resourceId" : 0,
  "supplierOrigin" : "string",
  "translations" : [ {
    "accotypeKind" : "string",
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "namePath" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "string"
}

5.1.2. Gets all accommodation types

GET /maxxton/v1/accommodationtypes
Description

Gets a page with accommodation types. The records can be filtered based on accommodation type object.It also supports pageable.

Parameters
Type Name Description Schema

Query

brand
optional

brand to filter records based on brand.

string

Query

countryCode
optional

Country code to filter accommodation types.

string

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
resourceId:0,
type:String,
code:String,
resortId:0,
parentId:0,
path:String,
hasObjects:true,
dependsOnLedgerGroup:true,
priority:0,
numberOfPersons:0,
nrOfBedrooms:0.0,
nrOfBathrooms:0.0,
accotypeKindId:0,
supplierOrigin:String,
archivedFrom:String(date),
ledgerId:0,
brand:String,
origin:String,
originId:String,
powerplayGroupId:0)

Query

resourceIds
optional

resourceIds

< integer (int64) > array(multi)

Query

returnWorkOrderTypes
optional

returnWorkOrderTypes

boolean

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching AccommodationTypes.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes
Example HTTP response
Response 200
{
  "content" : [ {
    "accommodationTypeKindCode" : "string",
    "accotypeKindId" : 0,
    "address" : {
      "accuracy" : "string",
      "address1" : "string",
      "address2" : "string",
      "address3" : "string",
      "addressId" : 0,
      "alternateContactPerson" : "string",
      "boxNumber" : "string",
      "city" : "string",
      "country" : {
        "code" : "string",
        "countryId" : 0,
        "default" : true,
        "translations" : [ {
          "language" : "string",
          "name" : "string"
        } ]
      },
      "countryId" : 0,
      "dateBegin" : "string",
      "dateEnd" : "string",
      "district" : "string",
      "email" : "string",
      "exposeLocation" : true,
      "fax" : "string",
      "houseNumber" : "string",
      "houseNumberSuffix" : "string",
      "latitude" : 0.0,
      "longitude" : 0.0,
      "managerId" : 0,
      "mobilePhone" : "string",
      "mobilePhone2" : "string",
      "municipality" : "string",
      "poBox" : "string",
      "poBoxCity" : "string",
      "poBoxZipcode" : "string",
      "privatePhone" : "string",
      "stateId" : 0,
      "workPhone" : "string",
      "zipCode" : "string"
    },
    "archivedFrom" : "string",
    "brand" : "string",
    "code" : "string",
    "dependsOnLedgerGroup" : true,
    "hasObjects" : true,
    "ledgerId" : 0,
    "nrOfBathrooms" : 0.0,
    "nrOfBedrooms" : 0.0,
    "numberOfPersons" : 0,
    "origin" : "string",
    "originId" : "string",
    "parentId" : 0,
    "path" : "string",
    "powerplayGroupId" : 0,
    "priority" : 0,
    "resortId" : 0,
    "resourceId" : 0,
    "supplierOrigin" : "string",
    "translations" : [ {
      "accotypeKind" : "string",
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "namePath" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.3. Gets accommodationTypes additions

GET /maxxton/v1/accommodationtypes/additions
Description

Get a page with accommodation types additions.Additions are defining recommended goods during the booking process(upselling). The products are linked to the accommodation where they may be booked. The data can be filtered based on resource addition object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
additionId:0,
additionFast:true,
mandatoryResource:true,
maxQuantity:0,
maxReservable:0,
maxTotalQuantity:0,
unitId:0,
priceCompare:true,
resourceId:0,
validFrom:String(date),
validTo:String(date))

Query

type
optional

type to filter records based on the type on the resource addition

enum (ACCOMMODATIONTYPE, RESOURCEACTIVITY, ACTIVITY, PRODUCTTYPE, EXTRA, SPECIAL, COMPOSITION)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching accommodation types additions.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/additions
Example HTTP response
Response 200
{
  "content" : [ {
    "additionFast" : true,
    "additionI18n" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "additionId" : 0,
    "addonType" : "string",
    "code" : "string",
    "mandatoryResource" : true,
    "maxQuantity" : 0,
    "maxReservable" : 0,
    "maxTotalQuantity" : 0,
    "priceCompare" : true,
    "resortArticle" : true,
    "resourceId" : 0,
    "resourceMoment" : [ "string" ],
    "supplierAdditionId" : 0,
    "translations" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "string",
    "unitId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.4. Gets amenity links page

GET /maxxton/v1/accommodationtypes/amenitylinks
Description

Gets a page with amenity links. The records can be filtered based on accommodation type amenity link object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
accommodationTypeId:0,
amenityLinkId:0,
type:String,
visible:true,
preferenceExtraId:0,
numberValue:0,
textValue:String,
startDate:String(date),
endDate:String(date),
amenityId:0,
code:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching Amenity links.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/amenitylinks
Example HTTP response
Response 200
{
  "content" : [ {
    "amenityId" : 0,
    "amenityLinkId" : 0,
    "code" : "string",
    "endDate" : "string",
    "numberValue" : 0,
    "preferenceExtraId" : 0,
    "startDate" : "string",
    "textValue" : "string",
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string"
    } ],
    "type" : "string",
    "visible" : true
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.5. Gets a single price for each stay (combination of arrival date and duration) for a given resource

POST /maxxton/v1/accommodationtypes/arrivalrangesearch
Description

Gets accommodationtype range search based on provided criteria. This endpoint supports prebooking prices, only if the field preBooking = true in the request body. If not specified, prebooking prices are not considered in the response.
Either voucherCode or offerCode should be provided in the request, and not both. In case both are provided then an error is thrown. In case no request parameters are provided by default for each accommodation type the cheapest option over all available stays is returned. This is also the case if multiple prices are available for one stay.

Parameters
Type Name Description Schema

Body

filter
required

filter

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

400

Either offerCode or voucherCode should be passed

No Content

500

Error occurred while fetching accommodationTypes

No Content

Consumes
  • application/json

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/arrivalrangesearch
Request body
{
  "accommodationKindIds" : [ 0 ],
  "amenityIds" : [ 0 ],
  "arrivalDateFrom" : "string",
  "distributionChannelId" : 0,
  "filterOptions" : [ "string" ],
  "numberOfDaysInResult" : 0,
  "offerCode" : "string",
  "petQuantity" : 0,
  "preBooking" : true,
  "resortIds" : [ 0 ],
  "resourceIds" : [ 0 ],
  "subjects" : {
    "persons" : [ {
      "maxAge" : "string",
      "quantity" : 0
    } ]
  },
  "unitId" : 0,
  "voucherCode" : "string"
}
Example HTTP response
Response 200
{
  "filterOptionsResult" : {
    "arrivals" : [ "object" ],
    "departures" : [ "object" ]
  },
  "results" : {
    "content" : [ {
      "accommodationKindId" : 0,
      "arrivalDate" : "string",
      "arrivalDowMask" : "string",
      "basePrice" : 0.0,
      "basePriceInclusive" : 0.0,
      "departureDate" : "string",
      "duration" : 0,
      "maxCapacity" : 0,
      "maxPetCapacity" : 0,
      "offerCode" : "string",
      "offerName" : "string",
      "offerPolicy" : "string",
      "offerPrice" : 0.0,
      "offerPriceInclusive" : 0.0,
      "preBooking" : true,
      "rateTypeId" : 0,
      "referencePrice" : 0.0,
      "referencePriceInclusive" : 0.0,
      "resortId" : 0,
      "resourceCode" : "string",
      "resourceId" : 0
    } ],
    "empty" : true,
    "first" : true,
    "last" : true,
    "number" : 0,
    "numberOfElements" : 0,
    "size" : 0,
    "sort" : [ {
      "ascending" : true,
      "descending" : true,
      "direction" : "string",
      "ignoreCase" : true,
      "nullHandling" : "string",
      "property" : "string"
    } ],
    "totalElements" : 0,
    "totalPages" : 0
  }
}

5.1.6. Get resource availability based on provided criteria.

GET /maxxton/v1/accommodationtypes/availability
Description

The endpoint can be used in following way:
1.If resourceId is passed in the request then it will return next four month’s availability from currentDate.
2.If only resortId is passed in the request then it will return two months availability of accommodations for that resort.
3.If only offerCode is passed in the request then it will return two months availability for all the types for which the requested offer is valid.
4.The arrivalDateFrom & arrivalDateTo fields could be used to limit the availability response for specific arrival date range.
5.There is a max limit on the arrival range period of four months together with resourceId field in the request and max limit of two months if only resortId or offercode field value is passed in the request.
6.In case no request parameters are provided by default for each accommodation type the cheapest option over all available stays is returned. This is also the case if multiple prices are available for one stay.

Parameters
Type Name Schema

Query

arrivalDateFrom
optional

string (date: yyyy-MM-dd)

Query

arrivalDateTo
optional

string (date: yyyy-MM-dd)

Query

distributionChannelId
optional

integer (int64)

Query

duration
optional

integer (int32)

Query

includeAllPrices
optional

boolean

Query

includeHiddenOffers
optional

boolean

Query

offerCode
optional

string

Query

rateTypeId
optional

integer (int64)

Query

resortId
optional

integer (int64)

Query

resourceId
optional

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching availability of resource

No Content

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/availability
Example HTTP response
Response 200
[ {
  "accommodationKindId" : 0,
  "arrivalDate" : "string",
  "departureDate" : "string",
  "duration" : 0,
  "maxCapacity" : 0,
  "petCapacity" : 0,
  "prices" : [ {
    "basePrice" : 0.0,
    "basePriceInclusive" : 0.0,
    "calculationDate" : "string",
    "offer" : {
      "maxAge" : 0,
      "minAge" : 0,
      "minCapacity" : 0,
      "offerCode" : "string",
      "offerId" : 0,
      "offerPolicy" : "string",
      "offerPrice" : 0.0,
      "offerPriceInclusive" : 0.0
    },
    "rateTypeId" : 0,
    "referencePrice" : 0.0,
    "referencePriceInclusive" : 0.0
  } ],
  "resortCode" : "string",
  "resortId" : 0,
  "resourceId" : 0,
  "units" : [ 0 ]
} ]

5.1.7. Gets the page of available addons for the accommodationType.

GET /maxxton/v1/accommodationtypes/availability/additions
Description

Gets the page of available addons

Parameters
Type Name Description Schema

Query

distributionChannelCode
optional

distributionChannelCode for which addons are to be fetched

string

Query

reservationCategoryCode
optional

reservationCategoryCode for which addons are to be fetched.

string

Query

resourceId
required

Resource id for which addons are to be fetched

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching prices of resource

No Content

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/availability/additions?resourceId=0
Example HTTP response
Response 200
{
  "content" : [ {
    "arrivalDateFrom" : "string",
    "arrivalDateTo" : "string",
    "bookDateFrom" : "string",
    "bookDateTo" : "string",
    "maxQuantity" : 0,
    "minQuantity" : 0,
    "prices" : [ {
      "appliedPerSubject" : true,
      "maxQuantity" : 0,
      "minQuantity" : 0,
      "perDay" : "string",
      "price" : 0.0,
      "priceArrivalDateFrom" : "string",
      "priceArrivalDateTo" : "string",
      "subjectIds" : [ 0 ],
      "subjectPrices" : [ {
        "minQuantity" : 0,
        "price" : 0.0
      } ]
    } ],
    "resortId" : 0,
    "resourceId" : 0,
    "translations" : [ {
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.8. Gets the page of available implies for the accommodationType.

GET /maxxton/v1/accommodationtypes/availability/implies
Description

Gets the page of available implies

Parameters
Type Name Description Schema

Query

distributionChannelCode
optional

DistributionChannelCode for which implies are to be fetched

string

Query

reservationCategoryCode
required

reservationCategoryCode for which implies are to be fetched.

string

Query

resourceId
required

Resource id for which implies are to be fetched

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching cost prices of resource

No Content

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/availability/implies?reservationCategoryCode=string&resourceId=0
Example HTTP response
Response 200
{
  "content" : [ {
    "arrivalDateFrom" : "string",
    "arrivalDateTo" : "string",
    "bookDateFrom" : "string",
    "bookDateTo" : "string",
    "included" : true,
    "maxQuantity" : 0,
    "minQuantity" : 0,
    "prices" : [ {
      "appliedPerSubject" : true,
      "included" : true,
      "maxQuantity" : 0,
      "minQuantity" : 0,
      "perDay" : "string",
      "price" : 0.0,
      "priceArrivalDateFrom" : "string",
      "priceArrivalDateTo" : "string",
      "subjectIds" : [ 0 ],
      "subjectPrices" : [ {
        "minQuantity" : 0,
        "price" : 0.0
      } ]
    } ],
    "required" : true,
    "resortId" : 0,
    "resourceId" : 0,
    "subjectsMax" : 0,
    "subjectsMin" : 0,
    "translations" : [ {
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.9. Gets cost prices for all accommodationtype

GET /maxxton/v1/accommodationtypes/costprices
Description

Gets a page with Cost prices. The records can be filtered based on Cost price object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
costPriceId:0,
resourceId:0,
arrivalDateFrom:String(date),
arrivalDateTo:String(date),
bookDateFrom:String(date),
bookDateTo:String(date),
duration:0,
minDuration:0,
maxDuration:0,
value:0.0,
currencyId:0,
valueType:String,
usageDowList:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching cost prices

No Content

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/costprices
Example HTTP response
Response 200
{
  "content" : [ {
    "bookDateFrom" : "string",
    "bookDateTo" : "string",
    "costPriceId" : 0,
    "costPriceSpecials" : [ {
      "endDate" : "string",
      "resourceId" : 0,
      "startDate" : "string"
    } ],
    "currency" : {
      "code" : "string",
      "currencyCountry" : "string",
      "currencyId" : 0,
      "currencyLanguage" : "string",
      "name" : "string",
      "symbol" : "string"
    },
    "remark" : "string",
    "resourceId" : 0,
    "stayDateFrom" : "string",
    "stayDateTo" : "string",
    "usageUnit" : 0,
    "usageUnitFrom" : 0,
    "usageUnitTo" : 0,
    "value" : 0.0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.10. Gets accommodation Type Detail

GET /maxxton/v1/accommodationtypes/details
Description

Gets a page of accommodationtype details. Maximum and default page size for this endpoint is 10.

Parameters
Type Name Description Schema

Query

brand
optional

brand to filter records based on brand.

string

Query

endDate
optional

Date to filter records based on end date. Date should be added using ISO 8601 standard(yyyy-MM-dd).

string (date: yyyy-MM-dd)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
resourceId:0,
code:String,
resortId:0,
priority:0,
nrOfBedrooms:0.0,
nrOfBathrooms:0.0,
hasObjects:true,
path:String,
checkinTime:String,
checkoutTime:String,
lateCheckoutTime:String,
earlyCheckinTime:String,
archivedFrom:String(date),
ledgerId:0,
parentId:0,
numberOfPersons:0,
accotypeKindId:0,
origin:String,
originId:String,
powerplayGroupId:0)

Query

resourceIds
optional

List of resourceIds to fetch the details.

< integer (int64) > array(multi)

Query

returnSections
optional

List of constant strings to return only the selected sections in the response. The possible values are ADDRESS, AMENITYCATEGORYSETS, CAPACITIES, CAPACITYREQUIREMENTS, DYNAMICFIELDS, IMAGES, ROOMS, VIDEOS, TRANSLATIONS. For example, returnSections=IMAGES,DYNAMICFIELDS will only return images and dynamicfields sections in the response. This is recommended to use to reduce the size of the response body and improve the performance of the call.

< enum (ADDRESS, AMENITYCATEGORYSETS, CAPACITIES, CAPACITYREQUIREMENTS, DYNAMICFIELDS, IMAGES, ROOMS, VIDEOS, TRANSLATIONS, UNITS) > array(multi)

Query

returnWorkOrderTypes
optional

returnWorkOrderTypes

boolean

Query

startDate
optional

Date to filter records based on start date. Date should be added using ISO 8601 standard(yyyy-MM-dd).

string (date: yyyy-MM-dd)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching AccommodationTypeUnitDetail.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/details
Example HTTP response
Response 200
{
  "content" : [ {
    "accommodationTypeKindCode" : "string",
    "accotypeKindId" : 0,
    "address" : {
      "accuracy" : "string",
      "address1" : "string",
      "address2" : "string",
      "address3" : "string",
      "addressId" : 0,
      "alternateContactPerson" : "string",
      "boxNumber" : "string",
      "city" : "string",
      "country" : {
        "code" : "string",
        "countryId" : 0,
        "default" : true,
        "translations" : [ {
          "language" : "string",
          "name" : "string"
        } ]
      },
      "countryId" : 0,
      "dateBegin" : "string",
      "dateEnd" : "string",
      "district" : "string",
      "email" : "string",
      "exposeLocation" : true,
      "fax" : "string",
      "houseNumber" : "string",
      "houseNumberSuffix" : "string",
      "latitude" : 0.0,
      "longitude" : 0.0,
      "managerId" : 0,
      "mobilePhone" : "string",
      "mobilePhone2" : "string",
      "municipality" : "string",
      "poBox" : "string",
      "poBoxCity" : "string",
      "poBoxZipcode" : "string",
      "privatePhone" : "string",
      "stateId" : 0,
      "workPhone" : "string",
      "zipCode" : "string"
    },
    "amenityCategorySets" : [ {
      "categories" : [ {
        "amenities" : [ {
          "amenityId" : 0,
          "amenityLinkId" : 0,
          "archivedFrom" : "string",
          "code" : "string",
          "endDate" : "string",
          "images" : [ {
            "endDate" : "string",
            "fileName" : "string",
            "imageId" : 0,
            "imageOrientation" : "string",
            "imageType" : "string",
            "mimeType" : "string",
            "modifiedDate" : "string",
            "sequenceNumber" : 0,
            "startDate" : "string",
            "tags" : [ {
              "name" : "string",
              "tagId" : 0
            } ],
            "translations" : [ {
              "description" : "string",
              "imageId" : 0,
              "language" : "string",
              "name" : "string"
            } ],
            "uploadDate" : "string",
            "url" : "string",
            "urls" : {
              "string" : "string"
            },
            "version" : 0
          } ],
          "metric" : {
            "code" : "string",
            "metricId" : 0,
            "translations" : [ {
              "language" : "string",
              "name" : "string"
            } ]
          },
          "numberValue" : 0,
          "origin" : "string",
          "parentAmenityId" : 0,
          "preferenceExtraId" : 0,
          "startDate" : "string",
          "textValue" : "string",
          "translations" : [ {
            "description" : "string",
            "language" : "string",
            "name" : "string"
          } ],
          "type" : "string",
          "visible" : true
        } ],
        "amenityCategoryId" : 0,
        "amenityGroups" : [ {
          "amenities" : [ {
            "amenityId" : 0,
            "amenityLinkId" : 0,
            "archivedFrom" : "string",
            "code" : "string",
            "endDate" : "string",
            "images" : [ {
              "endDate" : "string",
              "fileName" : "string",
              "imageId" : 0,
              "imageOrientation" : "string",
              "imageType" : "string",
              "mimeType" : "string",
              "modifiedDate" : "string",
              "sequenceNumber" : 0,
              "startDate" : "string",
              "tags" : [ {
                "name" : "string",
                "tagId" : 0
              } ],
              "translations" : [ {
                "description" : "string",
                "imageId" : 0,
                "language" : "string",
                "name" : "string"
              } ],
              "uploadDate" : "string",
              "url" : "string",
              "urls" : {
                "string" : "string"
              },
              "version" : 0
            } ],
            "metric" : {
              "code" : "string",
              "metricId" : 0,
              "translations" : [ {
                "language" : "string",
                "name" : "string"
              } ]
            },
            "numberValue" : 0,
            "origin" : "string",
            "parentAmenityId" : 0,
            "preferenceExtraId" : 0,
            "startDate" : "string",
            "textValue" : "string",
            "translations" : [ {
              "description" : "string",
              "language" : "string",
              "name" : "string"
            } ],
            "type" : "string",
            "visible" : true
          } ],
          "amenityId" : 0,
          "amenityLinkId" : 0,
          "archivedFrom" : "string",
          "code" : "string",
          "endDate" : "string",
          "metric" : {
            "code" : "string",
            "metricId" : 0,
            "translations" : [ {
              "language" : "string",
              "name" : "string"
            } ]
          },
          "numberValue" : 0,
          "origin" : "string",
          "parentAmenityId" : 0,
          "preferenceExtraId" : 0,
          "startDate" : "string",
          "textValue" : "string",
          "translations" : [ {
            "description" : "string",
            "language" : "string",
            "name" : "string"
          } ],
          "type" : "string",
          "visible" : true
        } ],
        "code" : "string",
        "priority" : 0,
        "translations" : [ {
          "language" : "string",
          "name" : "string"
        } ]
      } ],
      "code" : "string",
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    } ],
    "archivedFrom" : "string",
    "brand" : "string",
    "brandId" : 0,
    "capacities" : [ {
      "capacity" : 0,
      "capacityId" : 0,
      "endDate" : "string",
      "startDate" : "string",
      "subject" : {
        "controlAccess" : true,
        "endDate" : "string",
        "includeInTotal" : true,
        "maxAge" : 0,
        "subjectCategoryId" : 0,
        "subjectId" : 0,
        "subjectOrder" : 0,
        "translations" : [ {
          "language" : "string",
          "name" : "string",
          "shortDescription" : "string"
        } ],
        "type" : "string"
      },
      "subjectId" : 0
    } ],
    "capacityRequirements" : [ {
      "required" : 0,
      "subject" : [ {
        "controlAccess" : true,
        "endDate" : "string",
        "includeInTotal" : true,
        "maxAge" : 0,
        "subjectCategoryId" : 0,
        "subjectId" : 0,
        "subjectOrder" : 0,
        "translations" : [ {
          "language" : "string",
          "name" : "string",
          "shortDescription" : "string"
        } ],
        "type" : "string"
      } ]
    } ],
    "checkinTime" : "12:00:00",
    "checkoutTime" : "12:00:00",
    "code" : "string",
    "dynamicFields" : [ {
      "code" : "string",
      "fieldId" : 0,
      "translations" : [ {
        "description" : "string",
        "language" : "string",
        "name" : "string",
        "shortDescription" : "string",
        "text" : "string"
      } ],
      "type" : "string"
    } ],
    "earlyCheckinTime" : "12:00:00",
    "hasObjects" : true,
    "images" : [ {
      "endDate" : "string",
      "fileName" : "string",
      "imageId" : 0,
      "imageOrientation" : "string",
      "imageType" : "string",
      "mimeType" : "string",
      "modifiedDate" : "string",
      "sequenceNumber" : 0,
      "startDate" : "string",
      "tags" : [ {
        "name" : "string",
        "tagId" : 0
      } ],
      "translations" : [ {
        "description" : "string",
        "imageId" : 0,
        "language" : "string",
        "name" : "string"
      } ],
      "uploadDate" : "string",
      "url" : "string",
      "urls" : {
        "string" : "string"
      },
      "version" : 0
    } ],
    "lateCheckoutTime" : "12:00:00",
    "ledgerId" : 0,
    "nrOfBathrooms" : 0.0,
    "nrOfBedrooms" : 0.0,
    "numberOfPersons" : 0,
    "origin" : "string",
    "originId" : "string",
    "parentId" : 0,
    "path" : "string",
    "powerplayGroupId" : 0,
    "priority" : 0,
    "resortId" : 0,
    "resourceId" : 0,
    "rooms" : [ {
      "amenities" : [ {
        "amenityLinkId" : 0,
        "numberValue" : 0,
        "roomId" : 0,
        "textValue" : "string"
      } ],
      "code" : "string",
      "lowestLevel" : true,
      "parentId" : 0,
      "roomId" : 0,
      "roomType" : {
        "code" : "string",
        "roomTypeId" : 0,
        "translations" : [ {
          "description" : "string",
          "language" : "string",
          "name" : "string"
        } ]
      },
      "translations" : [ {
        "description" : "string",
        "language" : "string",
        "name" : "string"
      } ]
    } ],
    "translations" : [ {
      "accotypeKind" : "string",
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "namePath" : "string",
      "shortDescription" : "string"
    } ],
    "videos" : [ {
      "endDate" : "string",
      "hostType" : "string",
      "isActive" : true,
      "isUploaded" : true,
      "isWebPresentation" : true,
      "mediaLanguageCode" : "string",
      "mediaType" : "string",
      "sequenceNumber" : 0,
      "startDate" : "string",
      "thumbnailUrl" : "string",
      "url" : "string",
      "videoId" : 0
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.11. Gets resource implies

GET /maxxton/v1/accommodationtypes/implies
Description

Gets a page with resource implies. Implies are the extras that can be linked to the special. The records can be filtered based on implies object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
impliesId:0,
addToParent:0,
bookDateFrom:String(date),
bookDateTo:String(date),
countFromMin:true,
ignoreRentability:true,
implicationManagerId:0,
implyOnce:true,
included:true,
onBill:true,
parentId:0,
priority:0,
quantityMax:0,
quantityMin:0,
removable:true,
required:true,
showOnAllInPriceBill:true,
showPrice:true,
subjectsMax:0,
subjectsMin:0,
supplierImpliesId:0,
validFrom:String(date),
validTo:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching resource implies.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/implies
Example HTTP response
Response 200
{
  "content" : [ {
    "addToParent" : 0,
    "bookDateFrom" : "string",
    "bookDateTo" : "string",
    "countFromMin" : true,
    "ignoreRentability" : true,
    "implicationManagerId" : 0,
    "implied" : [ {
      "objectId" : 0,
      "resourceId" : 0
    } ],
    "impliesId" : 0,
    "implyOnce" : true,
    "included" : true,
    "onBill" : true,
    "parent" : true,
    "parentId" : 0,
    "priority" : 0,
    "quantityMax" : 0,
    "quantityMin" : 0,
    "removable" : true,
    "required" : true,
    "resourceIds" : [ 0 ],
    "showOnAllInPriceBill" : true,
    "showPrice" : true,
    "stay" : true,
    "subjectsMax" : 0,
    "subjectsMin" : 0,
    "supplierImpliesId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.12. Get accommodation kinds

GET /maxxton/v1/accommodationtypes/kinds
Description

Gets a page with accommodation kinds.The records can be filtered based on accommodation kind object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
accommodationkindId:0,
code:String,
priority:0,
excludeFromReporting:true,
workOrderUnits:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching AccommodationKind.

No Content

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/kinds
Example HTTP response
Response 200
{
  "content" : [ {
    "accommodationkindId" : 0,
    "code" : "string",
    "excludeFromReporting" : true,
    "priority" : 0,
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string"
    } ],
    "workOrderUnits" : true
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.13. Search accommodationtypes based on provided criteria

POST /maxxton/v1/accommodationtypes/search
Description

The above endpoint is used to search through the availability of the whole inventory based on all accommodation types, this can be filtered by providing request criteria. For example: arrival date , duration , resort , accommodation type , amenities and subjects are possible filters. The result can contain filter options, filter options provide all possible filter possibilities based on the currently provided filter options. This provides you with all possible arrivals , departures , resorts and amenities as per the criteria passed in the request. If "Includeallprices" field is passed as true in the request, it will provide 10 records in the the response, if it provided as false only first record is displayed in response.
In case of prebooking, the prices returned would be null.
Either voucherCode or offerCode should be provided in the request, and not both. In case both are provided then an error is thrown.
The "dateMargin" request parameter will provide up to 4 alternative stays according to the number that is supplied in "dateMargin" in case there is no match with the requested criteria. It’s up to the client to choose which of these alternatives to use. In case there is an exact match with the requested stay dates only 1 available stay is provided in the result. In case no request parameters are provided by default for each accommodation type the cheapest option over all available stays is returned. This is also the case if multiple prices are available for one stay. See below diagram for an explanation on how the alternative stays work:
DateMarginFlowDiagram role="text-center"

Parameters
Type Name Description Schema

Query

defaultSelection
optional

single possible value - nearest_arrival [First available arrival if no arrival date is provided based on todays date, by default sort is based on cheapest_price]

string

Query

sort
optional

Sort parameter is used to sort the response in ascending or descending order on the basis of offer price. In order to sort the response in ascending order 'offer_price_asc' is used and to sort in descending order the value of sort that should be passed is 'offer_price_desc'

string

Body

request
required

request

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

400

  1. Either offerCode or voucherCode should be passed

  2. The dateMargin parameter cannot be used in combination with includeAllPrices parameter.

No Content

500

Error occurred while fetching accommodationTypes

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/search
Request body
{
  "accommodationKindIds" : [ 0 ],
  "amenityIds" : [ 0 ],
  "arrivalDate" : "string",
  "dateMargin" : 0,
  "dateMarginMethod" : "string",
  "distributionChannelId" : 0,
  "duration" : 0,
  "filterOptions" : [ "string" ],
  "includeAllPrices" : true,
  "includeFilterOptionCounts" : true,
  "maxNrOfBathrooms" : 0,
  "maxNrOfBedrooms" : 0,
  "minNrOfBathrooms" : 0,
  "minNrOfBedrooms" : 0,
  "offerCode" : "string",
  "petQuantity" : 0,
  "regionId" : 0,
  "resortIds" : [ 0 ],
  "resourceIds" : [ 0 ],
  "subjects" : {
    "persons" : [ {
      "maxAge" : "string",
      "quantity" : 0
    } ]
  },
  "voucherCode" : "string"
}
Example HTTP response
Response 200
{
  "filterOptionsResult" : {
    "accommodationKinds" : [ "object" ],
    "amenities" : [ "object" ],
    "arrivals" : [ "object" ],
    "departures" : [ "object" ],
    "resorts" : [ "object" ]
  },
  "result" : [ {
    "accommodationKindId" : 0,
    "arrivalDate" : "string",
    "basePrice" : 0.0,
    "basePriceInclusive" : 0.0,
    "departureDate" : "string",
    "duration" : 0,
    "nrOfBathrooms" : 0.0,
    "nrOfBedrooms" : 0,
    "offerCode" : "string",
    "offerName" : "string",
    "offerPrice" : 0.0,
    "offerPriceInclusive" : 0.0,
    "rateTypeId" : 0,
    "rating" : 0.0,
    "referencePrice" : 0.0,
    "referencePriceInclusive" : 0.0,
    "resortId" : 0,
    "resourceId" : 0,
    "totalCapacity" : 0,
    "units" : [ 0 ]
  } ]
}

5.1.14. Gets an accommodation Type on a specific resource id.

GET /maxxton/v1/accommodationtypes/{resourceId}
Description

Gets accommodation types based on its resource id.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id to fetch accommodationtype

integer (int64)

Query

returnWorkOrderTypes
optional

returnWorkOrderTypes

boolean

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching AccommodationType.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0
Example HTTP response
Response 200
{
  "accommodationTypeKindCode" : "string",
  "accotypeKindId" : 0,
  "address" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "addressId" : 0,
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "archivedFrom" : "string",
  "brand" : "string",
  "code" : "string",
  "dependsOnLedgerGroup" : true,
  "hasObjects" : true,
  "ledgerId" : 0,
  "nrOfBathrooms" : 0.0,
  "nrOfBedrooms" : 0.0,
  "numberOfPersons" : 0,
  "origin" : "string",
  "originId" : "string",
  "parentId" : 0,
  "path" : "string",
  "powerplayGroupId" : 0,
  "priority" : 0,
  "resortId" : 0,
  "resourceId" : 0,
  "supplierOrigin" : "string",
  "translations" : [ {
    "accotypeKind" : "string",
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "namePath" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "string"
}

5.1.15. Updates an accommodation type on a specific resource id.

PUT /maxxton/v1/accommodationtypes/{resourceId}
Description

Updates accommodation types based on its resource id.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id to update accommodationtype

integer (int64)

Body

UpdateAccommodationTypeRequest
required

Body to update accommodationType

Responses
HTTP Code Description Schema

200

OK

No Content

204

The request is completed successfully without any errors

No Content

500

Error occurred while fetching AccommodationType.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0
Request body
{
  "accotypeKindId" : 0,
  "address" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "brandId" : 0,
  "checkinTime" : "12:00:00",
  "checkoutTime" : "12:00:00",
  "code" : "string",
  "earlyCheckinTime" : "12:00:00",
  "nrOfBathrooms" : 0.0,
  "nrOfBedrooms" : 0.0,
  "origin" : "string",
  "originId" : "string",
  "parentId" : 0,
  "priority" : 0,
  "resortId" : 0,
  "translations" : [ {
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ]
}

5.1.16. Gets accommodation type additions

GET /maxxton/v1/accommodationtypes/{resourceId}/additions
Description

Gets a page with AccommodationType additions for a particular resource. The record can be filtered based on resource addition object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

resourceId of accommodation for which additions are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
additionId:0,
additionFast:true,
mandatoryResource:true,
maxQuantity:0,
maxReservable:0,
maxTotalQuantity:0,
unitId:0,
priceCompare:true,
resourceId:0,
validFrom:String(date),
validTo:String(date))

Query

type
optional

type to filter records based on the type on the resource addition

enum (ACCOMMODATIONTYPE, RESOURCEACTIVITY, ACTIVITY, PRODUCTTYPE, EXTRA, SPECIAL, COMPOSITION)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching accommodation type additions.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/additions
Example HTTP response
Response 200
{
  "content" : [ {
    "additionFast" : true,
    "additionI18n" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "additionId" : 0,
    "addonType" : "string",
    "code" : "string",
    "mandatoryResource" : true,
    "maxQuantity" : 0,
    "maxReservable" : 0,
    "maxTotalQuantity" : 0,
    "priceCompare" : true,
    "resortArticle" : true,
    "resourceId" : 0,
    "resourceMoment" : [ "string" ],
    "supplierAdditionId" : 0,
    "translations" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "string",
    "unitId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.17. Gets allotments for Resource

GET /maxxton/v1/accommodationtypes/{resourceId}/allotments
Description

Gets allotments for Resource of a specific resourceId. The records can be filtered based on allotment object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which to fetch Allotments

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
allotmentId:0,
distributionChannelId:0,
resourceId:0,
name:String,
description:String,
type:String,
exceedLimit:0,
expirePeriod:0,
amount:0,
modified:String(date),
isEnactive:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching Allotments.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/allotments
Example HTTP response
Response 200
{
  "content" : [ {
    "allotmentId" : 0,
    "amount" : 0,
    "description" : "string",
    "distributionChannelId" : 0,
    "exceedLimit" : 0,
    "expirePeriod" : 0,
    "hasObjects" : true,
    "isEnactive" : true,
    "modified" : "string",
    "name" : "string",
    "periods" : [ {
      "endDate" : "string",
      "quantity" : 0,
      "startDate" : "string",
      "unitIds" : [ 0 ]
    } ],
    "resourceId" : 0,
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.18. Gets allotments releases of a specific resource

GET /maxxton/v1/accommodationtypes/{resourceId}/allotments/releases
Description

Gets allotment releases for a resource with particular resource id.The records can be fetched based on allotment release object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which to fetch Allotment releases

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
allotmentReleaseId:0,
distributionChannelId:0,
name:String,
startDate:String(date),
endDate:String(date),
releasePeriod:0,
releaseDate:String(date),
performedDate:String(date),
resourceId:0,
resortId:0,
isEnactive:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching Allotment releases.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/allotments/releases
Example HTTP response
Response 200
{
  "content" : [ {
    "allotmentReleaseId" : 0,
    "distributionChannelId" : 0,
    "endDate" : "string",
    "isEnactive" : true,
    "name" : "string",
    "performedDate" : "string",
    "releaseDate" : "string",
    "releasePeriod" : 0,
    "resortId" : 0,
    "resourceId" : 0,
    "startDate" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.19. Gets amenity links page for a resource

GET /maxxton/v1/accommodationtypes/{resourceId}/amenitylinks
Description

Gets a page with amenity links to a particular resource.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

resourceId

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
amenityLinkId:0,
type:String,
visible:true,
preferenceExtraId:0,
numberValue:0,
textValue:String,
startDate:String(date),
endDate:String(date),
amenityId:0,
code:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching Amenity links.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/amenitylinks
Example HTTP response
Response 200
{
  "content" : [ {
    "amenityId" : 0,
    "amenityLinkId" : 0,
    "code" : "string",
    "endDate" : "string",
    "numberValue" : 0,
    "preferenceExtraId" : 0,
    "startDate" : "string",
    "textValue" : "string",
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string"
    } ],
    "type" : "string",
    "visible" : true
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.20. Create accommodationtype budgets.

POST /maxxton/v1/accommodationtypes/{resourceId}/budgets
Description

Create or update the daily budget for the specific accommodation type based on id.

Parameters
Type Name Description Schema

Path

resourceId
required

resourceId of accommodation type for which the budget needs to be created

integer (int64)

Body

resourceBudgetList
required

List of budgets wchich needs to be created

Responses
HTTP Code Description Schema

200

OK

No Content

204

The request is completed successfully without any errors

No Content

500

Error occurred while creating the accommodation type budget.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/budgets
Request body
[ {
  "budgetDate" : "string",
  "modifiedBudget" : 0.0,
  "originalBudget" : 0.0
} ]

5.1.21. Gets an accommodationType budget of a resource.

GET /maxxton/v1/accommodationtypes/{resourceId}/budgets
Description

Get the daily budget for the specific accommodation type based on id.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

resourceId of accommodation type for which the budget needs to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
budgetId:0,
resourceId:0,
originalBudget:0.0,
modifiedBudget:0.0,
budgetDate:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching accommodation type budget.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/budgets
Example HTTP response
Response 200
{
  "content" : [ {
    "budgetDate" : "string",
    "budgetId" : 0,
    "modifiedBudget" : 0.0,
    "originalBudget" : 0.0,
    "resourceId" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.22. Get capacities of the accommodation type

GET /maxxton/v1/accommodationtypes/{resourceId}/capacities
Description

Capacity specify the details about the number persons (Adult, Youngster, Baby etc.) or pets that can be accommodated in the accommodation type. This endpoint provides capacities for an accommodation type.

Parameters
Type Name Description Schema

Path

resourceId
required

resourceId to fetch capacities

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
capacityId:0,
managerId:0,
capacity:0,
subjectId:0,
startDate:String(date),
endDate:String(date))

Query

returnWorkOrderTypes
optional

returnWorkOrderTypes

boolean

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching capacities for AccommodationType.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/capacities
Example HTTP response
Response 200
{
  "capacity" : 0,
  "capacityId" : 0,
  "endDate" : "string",
  "name" : "string",
  "startDate" : "string",
  "subjectId" : 0
}

5.1.23. Gets Cost prices on a specific resource id.

GET /maxxton/v1/accommodationtypes/{resourceId}/costprices
Description

Gets Cost prices based on resource id.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which cost prices are to be fetched

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching cost prices of resource

No Content

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/costprices
Example HTTP response
Response 200
{
  "bookDateFrom" : "string",
  "bookDateTo" : "string",
  "costPriceId" : 0,
  "costPriceSpecials" : [ {
    "endDate" : "string",
    "resourceId" : 0,
    "startDate" : "string"
  } ],
  "currency" : {
    "code" : "string",
    "currencyCountry" : "string",
    "currencyId" : 0,
    "currencyLanguage" : "string",
    "name" : "string",
    "symbol" : "string"
  },
  "remark" : "string",
  "resourceId" : 0,
  "stayDateFrom" : "string",
  "stayDateTo" : "string",
  "usageUnit" : 0,
  "usageUnitFrom" : 0,
  "usageUnitTo" : 0,
  "value" : 0.0
}

5.1.24. Gets accommodation Type Detail

GET /maxxton/v1/accommodationtypes/{resourceId}/details
Description

Gets a detailed decription of the particular resource accommodationtypes.

Parameters
Type Name Description Schema

Path

resourceId
required

resourceId to fetch accommodationtypedetail

integer (int64)

Query

endDate
optional

Date to filter records based on end date. Date should be added using ISO 8601 standard(yyyy-MM-dd).

string (date: yyyy-MM-dd)

Query

returnSections
optional

List of constant strings to return only the selected sections in the response. The possible values are ADDRESS, AMENITYCATEGORYSETS, CAPACITIES, CAPACITYREQUIREMENTS, DYNAMICFIELDS, IMAGES, ROOMS, VIDEOS, TRANSLATIONS. For example, returnSections=IMAGES,DYNAMICFIELDS will only return images and dynamicfields sections in the response. This is recommended to use to reduce the size of the response body and improve the performance of the call.

< enum (ADDRESS, AMENITYCATEGORYSETS, CAPACITIES, CAPACITYREQUIREMENTS, DYNAMICFIELDS, IMAGES, ROOMS, VIDEOS, TRANSLATIONS, UNITS) > array(multi)

Query

returnWorkOrderTypes
optional

returnWorkOrderTypes

boolean

Query

startDate
optional

Date to filter records based on start date. Date should be added using ISO 8601 standard(yyyy-MM-dd).

string (date: yyyy-MM-dd)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching AccommodationTypeDetail.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/details
Example HTTP response
Response 200
{
  "accommodationTypeKindCode" : "string",
  "accotypeKindId" : 0,
  "address" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "addressId" : 0,
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "amenityCategorySets" : [ {
    "categories" : [ {
      "amenities" : [ {
        "amenityId" : 0,
        "amenityLinkId" : 0,
        "archivedFrom" : "string",
        "code" : "string",
        "endDate" : "string",
        "images" : [ {
          "endDate" : "string",
          "fileName" : "string",
          "imageId" : 0,
          "imageOrientation" : "string",
          "imageType" : "string",
          "mimeType" : "string",
          "modifiedDate" : "string",
          "sequenceNumber" : 0,
          "startDate" : "string",
          "tags" : [ {
            "name" : "string",
            "tagId" : 0
          } ],
          "translations" : [ {
            "description" : "string",
            "imageId" : 0,
            "language" : "string",
            "name" : "string"
          } ],
          "uploadDate" : "string",
          "url" : "string",
          "urls" : {
            "string" : "string"
          },
          "version" : 0
        } ],
        "metric" : {
          "code" : "string",
          "metricId" : 0,
          "translations" : [ {
            "language" : "string",
            "name" : "string"
          } ]
        },
        "numberValue" : 0,
        "origin" : "string",
        "parentAmenityId" : 0,
        "preferenceExtraId" : 0,
        "startDate" : "string",
        "textValue" : "string",
        "translations" : [ {
          "description" : "string",
          "language" : "string",
          "name" : "string"
        } ],
        "type" : "string",
        "visible" : true
      } ],
      "amenityCategoryId" : 0,
      "amenityGroups" : [ {
        "amenities" : [ {
          "amenityId" : 0,
          "amenityLinkId" : 0,
          "archivedFrom" : "string",
          "code" : "string",
          "endDate" : "string",
          "images" : [ {
            "endDate" : "string",
            "fileName" : "string",
            "imageId" : 0,
            "imageOrientation" : "string",
            "imageType" : "string",
            "mimeType" : "string",
            "modifiedDate" : "string",
            "sequenceNumber" : 0,
            "startDate" : "string",
            "tags" : [ {
              "name" : "string",
              "tagId" : 0
            } ],
            "translations" : [ {
              "description" : "string",
              "imageId" : 0,
              "language" : "string",
              "name" : "string"
            } ],
            "uploadDate" : "string",
            "url" : "string",
            "urls" : {
              "string" : "string"
            },
            "version" : 0
          } ],
          "metric" : {
            "code" : "string",
            "metricId" : 0,
            "translations" : [ {
              "language" : "string",
              "name" : "string"
            } ]
          },
          "numberValue" : 0,
          "origin" : "string",
          "parentAmenityId" : 0,
          "preferenceExtraId" : 0,
          "startDate" : "string",
          "textValue" : "string",
          "translations" : [ {
            "description" : "string",
            "language" : "string",
            "name" : "string"
          } ],
          "type" : "string",
          "visible" : true
        } ],
        "amenityId" : 0,
        "amenityLinkId" : 0,
        "archivedFrom" : "string",
        "code" : "string",
        "endDate" : "string",
        "metric" : {
          "code" : "string",
          "metricId" : 0,
          "translations" : [ {
            "language" : "string",
            "name" : "string"
          } ]
        },
        "numberValue" : 0,
        "origin" : "string",
        "parentAmenityId" : 0,
        "preferenceExtraId" : 0,
        "startDate" : "string",
        "textValue" : "string",
        "translations" : [ {
          "description" : "string",
          "language" : "string",
          "name" : "string"
        } ],
        "type" : "string",
        "visible" : true
      } ],
      "code" : "string",
      "priority" : 0,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    } ],
    "code" : "string",
    "translations" : [ {
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "archivedFrom" : "string",
  "brand" : "string",
  "brandId" : 0,
  "capacities" : [ {
    "capacity" : 0,
    "capacityId" : 0,
    "endDate" : "string",
    "startDate" : "string",
    "subject" : {
      "controlAccess" : true,
      "endDate" : "string",
      "includeInTotal" : true,
      "maxAge" : 0,
      "subjectCategoryId" : 0,
      "subjectId" : 0,
      "subjectOrder" : 0,
      "translations" : [ {
        "language" : "string",
        "name" : "string",
        "shortDescription" : "string"
      } ],
      "type" : "string"
    },
    "subjectId" : 0
  } ],
  "capacityRequirements" : [ {
    "required" : 0,
    "subject" : [ {
      "controlAccess" : true,
      "endDate" : "string",
      "includeInTotal" : true,
      "maxAge" : 0,
      "subjectCategoryId" : 0,
      "subjectId" : 0,
      "subjectOrder" : 0,
      "translations" : [ {
        "language" : "string",
        "name" : "string",
        "shortDescription" : "string"
      } ],
      "type" : "string"
    } ]
  } ],
  "checkinTime" : "12:00:00",
  "checkoutTime" : "12:00:00",
  "code" : "string",
  "dynamicFields" : [ {
    "code" : "string",
    "fieldId" : 0,
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string",
      "text" : "string"
    } ],
    "type" : "string"
  } ],
  "earlyCheckinTime" : "12:00:00",
  "hasObjects" : true,
  "images" : [ {
    "endDate" : "string",
    "fileName" : "string",
    "imageId" : 0,
    "imageOrientation" : "string",
    "imageType" : "string",
    "mimeType" : "string",
    "modifiedDate" : "string",
    "sequenceNumber" : 0,
    "startDate" : "string",
    "tags" : [ {
      "name" : "string",
      "tagId" : 0
    } ],
    "translations" : [ {
      "description" : "string",
      "imageId" : 0,
      "language" : "string",
      "name" : "string"
    } ],
    "uploadDate" : "string",
    "url" : "string",
    "urls" : {
      "string" : "string"
    },
    "version" : 0
  } ],
  "lateCheckoutTime" : "12:00:00",
  "ledgerId" : 0,
  "nrOfBathrooms" : 0.0,
  "nrOfBedrooms" : 0.0,
  "numberOfPersons" : 0,
  "origin" : "string",
  "originId" : "string",
  "parentId" : 0,
  "path" : "string",
  "powerplayGroupId" : 0,
  "priority" : 0,
  "resortId" : 0,
  "resourceId" : 0,
  "rooms" : [ {
    "amenities" : [ {
      "amenityLinkId" : 0,
      "numberValue" : 0,
      "roomId" : 0,
      "textValue" : "string"
    } ],
    "code" : "string",
    "lowestLevel" : true,
    "parentId" : 0,
    "roomId" : 0,
    "roomType" : {
      "code" : "string",
      "roomTypeId" : 0,
      "translations" : [ {
        "description" : "string",
        "language" : "string",
        "name" : "string"
      } ]
    },
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "translations" : [ {
    "accotypeKind" : "string",
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "namePath" : "string",
    "shortDescription" : "string"
  } ],
  "videos" : [ {
    "endDate" : "string",
    "hostType" : "string",
    "isActive" : true,
    "isUploaded" : true,
    "isWebPresentation" : true,
    "mediaLanguageCode" : "string",
    "mediaType" : "string",
    "sequenceNumber" : 0,
    "startDate" : "string",
    "thumbnailUrl" : "string",
    "url" : "string",
    "videoId" : 0
  } ]
}

5.1.25. Gets dynamic fields for a particular resource

GET /maxxton/v1/accommodationtypes/{resourceId}/dynamicfields
Description

Gets a page with dynamic fields to a specific resource. The records can be filtered based on the DynamicField object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which dynamic fieilds are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
fieldId:0,
code:String,
type:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching resource dynamic fields.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/dynamicfields
Example HTTP response
Response 200
{
  "content" : [ {
    "code" : "string",
    "fieldId" : 0,
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string",
      "text" : "string"
    } ],
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.26. Update/insert accommodation dynamic field

PUT /maxxton/v1/accommodationtypes/{resourceId}/dynamicfields/{fieldId}
Description

The above endpoint updates the text field of dynamic fields for specific language. If the dynamic field is valid for accommodation type, but not linked yet, then the link will be created. When a user is updating the dynamic field and if the link is already created with the accommodation type, then the text field will be modified

Parameters
Type Name Description Schema

Path

fieldId
required

fieldId to fetch dynamic field

integer (int64)

Path

resourceId
required

resourceId to fetch accommodationtypedetail

integer (int64)

Body

dynamicFieldCriteria
required

Dynamic field which we want to insert or update for accommodationType.

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

No Content

500

Error occurred while fetching updating/inserting the accommodation dynamic fields.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/dynamicfields/0
Request body
[ {
  "language" : "string",
  "text" : "string"
} ]

5.1.27. Gets images for a particular resource

GET /maxxton/v1/accommodationtypes/{resourceId}/images
Description

Gets a page with images to a specific resource. The records can be filtered based on the image object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which images are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
fileName:String,
imageId:0,
startDate:String(date),
endDate:String(date),
mimeType:String,
version:0,
url:String,
uploadDate:String(date),
imageOrientation:String,
modifiedDate:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching resource images.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/images
Example HTTP response
Response 200
{
  "content" : [ {
    "endDate" : "string",
    "fileName" : "string",
    "imageId" : 0,
    "imageOrientation" : "string",
    "imageType" : "string",
    "mimeType" : "string",
    "modifiedDate" : "string",
    "sequenceNumber" : 0,
    "startDate" : "string",
    "tags" : [ {
      "name" : "string",
      "tagId" : 0
    } ],
    "translations" : [ {
      "description" : "string",
      "imageId" : 0,
      "language" : "string",
      "name" : "string"
    } ],
    "uploadDate" : "string",
    "url" : "string",
    "urls" : {
      "string" : "string"
    },
    "version" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.28. Gets implies linked to a particular resource

GET /maxxton/v1/accommodationtypes/{resourceId}/implies
Description

Gets a page with resource implies. Implies are the extras that can be linked to the special.The records can be filtered based on the implies object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which implies are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
impliesId:0,
addToParent:0,
bookDateFrom:String(date),
bookDateTo:String(date),
countFromMin:true,
ignoreRentability:true,
implicationManagerId:0,
implyOnce:true,
included:true,
onBill:true,
parentId:0,
priority:0,
quantityMax:0,
quantityMin:0,
removable:true,
required:true,
showOnAllInPriceBill:true,
showPrice:true,
subjectsMax:0,
subjectsMin:0,
supplierImpliesId:0,
validFrom:String(date),
validTo:String(date))

Query

parentImplies
optional

Get a parent implies or resource implies

boolean

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching resource implies.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/implies
Example HTTP response
Response 200
{
  "content" : [ {
    "addToParent" : 0,
    "bookDateFrom" : "string",
    "bookDateTo" : "string",
    "countFromMin" : true,
    "ignoreRentability" : true,
    "implicationManagerId" : 0,
    "implied" : [ {
      "objectId" : 0,
      "resourceId" : 0
    } ],
    "impliesId" : 0,
    "implyOnce" : true,
    "included" : true,
    "onBill" : true,
    "parent" : true,
    "parentId" : 0,
    "priority" : 0,
    "quantityMax" : 0,
    "quantityMin" : 0,
    "removable" : true,
    "required" : true,
    "resourceIds" : [ 0 ],
    "showOnAllInPriceBill" : true,
    "showPrice" : true,
    "stay" : true,
    "subjectsMax" : 0,
    "subjectsMin" : 0,
    "supplierImpliesId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.29. Gets a Resource locks on specified resource id

GET /maxxton/v1/accommodationtypes/{resourceId}/locks
Description

Gets a page with resource locks specified with a particular resource id.The records can be filtered based on resource lock object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which locks are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
reasonId:0,
detailDescription:String,
startDate:String(date),
endDate:String(date),
type:String,
unitId:0)

Query

unitId
optional

unitId to filter the records

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching resource locks.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/locks
Example HTTP response
Response 200
{
  "content" : [ {
    "accoCreatedLock" : true,
    "blockDate" : "string",
    "clientId" : 0,
    "created" : "string",
    "createdOn" : "string",
    "detailDescription" : "string",
    "endDate" : "string",
    "objectId" : 0,
    "reasonId" : 0,
    "resourceId" : 0,
    "resourceLockId" : 0,
    "resourceManagerId" : 0,
    "startDate" : "string",
    "type" : "string",
    "unitId" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.30. Insert accommodation rate

POST /maxxton/v1/accommodationtypes/{resourceId}/rates
Description

Inserts the accommodation rate type. The details are to be mentioned in the request body. The rates cannot be inserted for derived rate option.x-allow-past-price : This header is passed in the request to allow the user to pass past book dates. The user can pass "true" as the value of the header if past book dates are provided in the request and if the value of this header is "false" the user will not be able to pass book dates that lie in the past. Rates in the past can only be inserted for accommodation types that currently have no rates at all or in case no reservations have been made for the particular accommodation type yet.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which resource rate will inserted

integer (int64)

Body

cashflowrule
required

rate for resource to insert

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

No Content

500

Error occurred while insert resource rate.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/rates
Request body
{
  "bookdateFrom" : "string",
  "bookdateTo" : "string",
  "daysOfWeek" : [ "string" ],
  "duration" : 0,
  "maxDeviation" : 0,
  "maxDuration" : 0,
  "minDeviation" : 0,
  "minDuration" : 0,
  "priority" : 0,
  "quantifier" : "string",
  "rateId" : 0,
  "rateLevelId" : 0,
  "rateOptionId" : 0,
  "rateTypeIds" : [ 0 ],
  "remark" : "string",
  "repeatable" : 0,
  "resourceId" : 0,
  "status" : 0,
  "translations" : [ {
    "language" : "string",
    "name" : "string"
  } ],
  "usageDurationFrom" : 0,
  "usageDurationTo" : 0,
  "validFrom" : "string",
  "validTo" : "string",
  "value" : 0.0,
  "valueType" : "string"
}

5.1.31. Gets accommodationtype rates

GET /maxxton/v1/accommodationtypes/{resourceId}/rates
Description

Gets a page with rates of accommodation of a particular resource.The records can be filtered based on rate object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which Rates are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
rateId:0,
value:0.0,
remark:String,
qrvType:String,
priority:0,
bookdateFrom:String(date),
bookdateTo:String(date),
usageDurationFrom:0,
usageDurationTo:0,
cashflowmanagerId:0,
validFrom:String(date),
validTo:String(date))

Query

rateTypeIds
optional

RateTypeIds to filter accommodation type Rates.

< integer (int64) > array(multi)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching accommodation type rates.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/rates
Example HTTP response
Response 200
{
  "content" : [ {
    "bookdateFrom" : "string",
    "bookdateTo" : "string",
    "daysOfWeek" : [ "string" ],
    "duration" : 0,
    "maxDeviation" : 0,
    "maxDuration" : 0,
    "maxDurationMinutes" : 0,
    "minDeviation" : 0,
    "minDuration" : 0,
    "minDurationMinutes" : 0,
    "priority" : 0,
    "qrvType" : "string",
    "qrvValues" : [ {
      "minQuantity" : 0,
      "value" : 0.0
    } ],
    "quantifier" : "string",
    "rateId" : 0,
    "rateTypeIds" : [ 0 ],
    "remark" : "string",
    "resourceId" : 0,
    "translations" : [ {
      "language" : "string",
      "name" : "string"
    } ],
    "usageDurationFrom" : 0,
    "usageDurationTo" : 0,
    "validFrom" : "string",
    "validTo" : "string",
    "value" : 0.0,
    "valueType" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.32. Gets a resource releases on specified resource id

GET /maxxton/v1/accommodationtypes/{resourceId}/releases
Description

Accommodation type release specifies that the accommodation type is available for booking for which period and to which users i.e. all, owners or test,It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which to fetch releases

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
releaseId:0,
maxArrivalDate:String(date),
minArrivalDate:String(date),
releasedDays:0,
status:String,
resourceId:0,
createdDate:String(date),
modifiedDate:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching AccommodationType releases.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/releases
Example HTTP response
Response 200
{
  "content" : [ {
    "createdDate" : "string",
    "maxArrivalDate" : "string",
    "minArrivalDate" : "string",
    "modifiedDate" : "string",
    "releaseId" : 0,
    "releasedDays" : 0,
    "resourceId" : 0,
    "status" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.33. Add rentability for accommodation type

POST /maxxton/v1/accommodationtypes/{resourceId}/rentability
Description

Rentability defines a specific period in which the accommodation type is rentable. The rentability details are to be added to the request body.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which rentability will be added for accommodation type

integer (int64)

Body

rentabilityDetail
required

Rentability for accommodation which contain the rentability configuration detail

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while adding rentability.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/rentability
Request body
{
  "bookdateFrom" : "string",
  "bookdateTo" : "string",
  "dateBegin" : "string",
  "dateEnd" : "string",
  "dayMax" : 0,
  "dayMin" : 0,
  "daysOfWeek" : [ "string" ],
  "isArrival" : true,
  "isDeparture" : true,
  "isTemporary" : 0,
  "managerId" : 0,
  "maxDeviationArrDepDate" : 0,
  "maxTimeAfterBookDate" : 0,
  "minDeviationArrDepDate" : 0,
  "minTimeAfterBookDate" : 0
}
Example HTTP response
Response 200
{
  "bookDateFrom" : "string",
  "bookDateTo" : "string",
  "dateBegin" : "string",
  "dateEnd" : "string",
  "distributionChannelIds" : [ 0 ],
  "gap" : 0,
  "isTemporary" : 0,
  "managerId" : 0,
  "maxDeviationArrDepDate" : 0,
  "maxTimeAfterBookDate" : 0,
  "minDeviationArrDepDate" : 0,
  "minTimeAfterBookDate" : 0,
  "rentabilityId" : 0,
  "rentabilityMarkers" : [ {
    "dowMask" : 0,
    "rentabilityMarkerId" : 0,
    "timeMax" : 0,
    "timeMin" : 0,
    "type" : "string"
  } ],
  "resourceIds" : [ 0 ]
}

5.1.34. Create accommodationType representation

POST /maxxton/v1/accommodationtypes/{resourceId}/representations
Description

Create accommodationType representations. The representation details are to be passed in the request body.

Parameters
Type Name Description Schema

Path

resourceId
required

resourceId of accommodation for which representations are to be created

integer (int64)

Body

representation
required

representation object to create represenation for accommodation type

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while creating accommodation type representation.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/representations
Request body
{
  "bookable" : true,
  "distributionChannelIds" : [ 0 ],
  "resourceId" : 0,
  "translations" : [ {
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ],
  "visible" : true
}
Example HTTP response
Response 200
{
  "bookable" : true,
  "distributionChannelIds" : [ 0 ],
  "representationId" : 0,
  "resourceId" : 0,
  "translations" : [ {
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ],
  "visible" : true
}

5.1.35. Gets accommodationType representations

GET /maxxton/v1/accommodationtypes/{resourceId}/representations
Description

Gets a page with accommodationType representations for a resource. The records can be filtered based on representation object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

resourceId of accommodation for which representations are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
resourceId:0,
visible:true,
bookable:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching accommodation type representations.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/representations
Example HTTP response
Response 200
{
  "content" : [ {
    "bookable" : true,
    "distributionChannelIds" : [ 0 ],
    "representationId" : 0,
    "resourceId" : 0,
    "translations" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "visible" : true
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.1.36. Gets videos for accommodation type

GET /maxxton/v1/accommodationtypes/{resourceId}/videos
Description

Gets a page with videos to a specific resource. The records can be filtered based on the video object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id for which videos are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
videoId:0,
startDate:String(date),
endDate:String(date),
url:String,
isUploaded:true,
mediaType:String,
hostType:String,
isActive:true,
isWebPresentation:true,
thumbnailUrl:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching resource videos.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/accommodationtypes/0/videos
Example HTTP response
Response 200
{
  "content" : [ {
    "endDate" : "string",
    "hostType" : "string",
    "isActive" : true,
    "isUploaded" : true,
    "isWebPresentation" : true,
    "mediaLanguageCode" : "string",
    "mediaType" : "string",
    "sequenceNumber" : 0,
    "startDate" : "string",
    "thumbnailUrl" : "string",
    "url" : "string",
    "videoId" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.2. AddOn

Extras and products that can be booked with an accommodation type

5.2.1. Gets a page with add-ons

GET /maxxton/v1/add-ons
Description

Gets page with add-ons.The records can be filtered based on add-on object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
resourceId:0,
code:String,
resortId:0,
parentId:0,
path:String,
cashflowManagerId:0,
allowPriceOverride:true,
source:String,
showNilPriceOnBill:true,
powerplaygroupId:0,
allowMovingToMainBill:true,
archivedFrom:String(date),
specialPriority:0,
autoValidateValue:0,
type:String,
resortArticle:true,
customizable:true,
showDatesOnInternet:true,
allowToAddInCiCo:true,
implicationManagerId:0,
ledgerId:0,
ledgerGroupId:0,
dependsOnLedgerGroup:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching add-ons.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/add-ons
Example HTTP response
Response 200
{
  "content" : [ {
    "addonType" : "string",
    "adjustment" : true,
    "allowMovingToMainBill" : true,
    "allowPriceOverride" : true,
    "allowToAddInCiCo" : true,
    "archivedFrom" : "string",
    "autoValidate" : true,
    "cancelCompensation" : true,
    "cancelPremium" : true,
    "cashArticle" : true,
    "cashflowManagerId" : 0,
    "code" : "string",
    "commission" : true,
    "commissionVatIncluded" : true,
    "correction" : true,
    "customizable" : true,
    "dependsOnLedgerGroup" : true,
    "earlyCheckin" : true,
    "excludePriceCache" : true,
    "implicationManagerId" : 0,
    "invoiceArticle" : true,
    "ledgerGroupId" : 0,
    "ledgerId" : 0,
    "maxQuantity" : 0,
    "ownerArticle" : true,
    "parentId" : 0,
    "path" : "string",
    "perDay" : true,
    "powerplaygroupId" : 0,
    "repaymentVoucher" : true,
    "reservationArticle" : true,
    "resortArticle" : true,
    "resortId" : 0,
    "resourceId" : 0,
    "searchCode" : "string",
    "showDatesOnInternet" : true,
    "showNilPriceOnBill" : true,
    "source" : "string",
    "specialPriority" : 0,
    "stayArticle" : true,
    "stockType" : "string",
    "tax" : true,
    "translations" : [ {
      "accotypeKind" : "string",
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "namePath" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "string",
    "vatCommission" : true,
    "warrant" : true,
    "withholdingArticle" : true
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.2.2. Gets Add-ons additions

GET /maxxton/v1/add-ons/additions
Description

Gets a page with add-ons additions. The records can be filtered based on resource addition object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
additionId:0,
additionFast:true,
mandatoryResource:true,
maxQuantity:0,
maxReservable:0,
maxTotalQuantity:0,
unitId:0,
priceCompare:true,
resourceId:0,
validFrom:String(date),
validTo:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching add-ons additions.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/add-ons/additions
Example HTTP response
Response 200
{
  "content" : [ {
    "additionFast" : true,
    "additionI18n" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "additionId" : 0,
    "addonType" : "string",
    "code" : "string",
    "mandatoryResource" : true,
    "maxQuantity" : 0,
    "maxReservable" : 0,
    "maxTotalQuantity" : 0,
    "priceCompare" : true,
    "resortArticle" : true,
    "resourceId" : 0,
    "resourceMoment" : [ "string" ],
    "supplierAdditionId" : 0,
    "translations" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "string",
    "unitId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.2.3. Get implies of add-ons

GET /maxxton/v1/add-ons/implies
Description

Get page with implies of add-ons.The records can be filtered based on implies object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
impliesId:0,
addToParent:0,
bookDateFrom:String(date),
bookDateTo:String(date),
countFromMin:true,
ignoreRentability:true,
implicationManagerId:0,
implyOnce:true,
included:true,
onBill:true,
parentId:0,
priority:0,
quantityMax:0,
quantityMin:0,
removable:true,
required:true,
showOnAllInPriceBill:true,
showPrice:true,
subjectsMax:0,
subjectsMin:0,
supplierImpliesId:0,
validFrom:String(date),
validTo:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching implies of add-ons.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/add-ons/implies
Example HTTP response
Response 200
{
  "content" : [ {
    "addToParent" : 0,
    "bookDateFrom" : "string",
    "bookDateTo" : "string",
    "countFromMin" : true,
    "ignoreRentability" : true,
    "implicationManagerId" : 0,
    "implied" : [ {
      "objectId" : 0,
      "resourceId" : 0
    } ],
    "impliesId" : 0,
    "implyOnce" : true,
    "included" : true,
    "onBill" : true,
    "parent" : true,
    "parentId" : 0,
    "priority" : 0,
    "quantityMax" : 0,
    "quantityMin" : 0,
    "removable" : true,
    "required" : true,
    "resourceIds" : [ 0 ],
    "showOnAllInPriceBill" : true,
    "showPrice" : true,
    "stay" : true,
    "subjectsMax" : 0,
    "subjectsMin" : 0,
    "supplierImpliesId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.2.4. Gets Add-on additions by addition resource id

GET /maxxton/v1/add-ons/{additionResourceId}/additions
Description

Gets a page with add-ons additions.The additions of an add-on will provide all accommodation types where the add-on is applicable to.The records can be filtered based on resource addition object.It also supports pageable.

Parameters
Type Name Description Schema

Path

additionResourceId
required

resourceId of add-on for which additions are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
additionId:0,
additionFast:true,
mandatoryResource:true,
maxQuantity:0,
maxReservable:0,
maxTotalQuantity:0,
unitId:0,
priceCompare:true,
resourceId:0,
validFrom:String(date),
validTo:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching add-ons additions.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/add-ons/0/additions
Example HTTP response
Response 200
{
  "content" : [ {
    "additionFast" : true,
    "additionI18n" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "additionId" : 0,
    "addonType" : "string",
    "code" : "string",
    "mandatoryResource" : true,
    "maxQuantity" : 0,
    "maxReservable" : 0,
    "maxTotalQuantity" : 0,
    "priceCompare" : true,
    "resortArticle" : true,
    "resourceId" : 0,
    "resourceMoment" : [ "string" ],
    "supplierAdditionId" : 0,
    "translations" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "string",
    "unitId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.2.5. Gets add-ons for specific resource id

GET /maxxton/v1/add-ons/{resourceId}
Description

Gets add-ons by resource id.

Parameters
Type Name Description Schema

Path

resourceId
required

resourceId

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching add-ons for the given resource id.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/add-ons/0
Example HTTP response
Response 200
{
  "addonType" : "string",
  "adjustment" : true,
  "allowMovingToMainBill" : true,
  "allowPriceOverride" : true,
  "allowToAddInCiCo" : true,
  "archivedFrom" : "string",
  "autoValidate" : true,
  "cancelCompensation" : true,
  "cancelPremium" : true,
  "cashArticle" : true,
  "cashflowManagerId" : 0,
  "code" : "string",
  "commission" : true,
  "commissionVatIncluded" : true,
  "correction" : true,
  "customizable" : true,
  "dependsOnLedgerGroup" : true,
  "earlyCheckin" : true,
  "excludePriceCache" : true,
  "implicationManagerId" : 0,
  "invoiceArticle" : true,
  "ledgerGroupId" : 0,
  "ledgerId" : 0,
  "maxQuantity" : 0,
  "ownerArticle" : true,
  "parentId" : 0,
  "path" : "string",
  "perDay" : true,
  "powerplaygroupId" : 0,
  "repaymentVoucher" : true,
  "reservationArticle" : true,
  "resortArticle" : true,
  "resortId" : 0,
  "resourceId" : 0,
  "searchCode" : "string",
  "showDatesOnInternet" : true,
  "showNilPriceOnBill" : true,
  "source" : "string",
  "specialPriority" : 0,
  "stayArticle" : true,
  "stockType" : "string",
  "tax" : true,
  "translations" : [ {
    "accotypeKind" : "string",
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "namePath" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "string",
  "vatCommission" : true,
  "warrant" : true,
  "withholdingArticle" : true
}

5.2.6. Gets images for a particular addon

GET /maxxton/v1/add-ons/{resourceId}/images
Description

Gets a page with images to a specific addon. The records can be filtered based on the image object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id of add-on for which images are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
fileName:String,
imageId:0,
startDate:String(date),
endDate:String(date),
mimeType:String,
version:0,
url:String,
uploadDate:String(date),
imageOrientation:String,
modifiedDate:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

add-ons is not found.

No Content

500

Error occurred while fetching addon images.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/add-ons/0/images
Example HTTP response
Response 200
{
  "content" : [ {
    "endDate" : "string",
    "fileName" : "string",
    "imageId" : 0,
    "imageOrientation" : "string",
    "imageType" : "string",
    "mimeType" : "string",
    "modifiedDate" : "string",
    "sequenceNumber" : 0,
    "startDate" : "string",
    "tags" : [ {
      "name" : "string",
      "tagId" : 0
    } ],
    "translations" : [ {
      "description" : "string",
      "imageId" : 0,
      "language" : "string",
      "name" : "string"
    } ],
    "uploadDate" : "string",
    "url" : "string",
    "urls" : {
      "string" : "string"
    },
    "version" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.2.7. Gets implies of add-ons

GET /maxxton/v1/add-ons/{resourceId}/implies
Description

Gets implies of add-ons.The records can be filtered based on implies object.It also supports pageable.

Parameters
Type Name Description Schema

Path

resourceId
required

ResourceId of offer for which the implies needs to be fetched.

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
impliesId:0,
addToParent:0,
bookDateFrom:String(date),
bookDateTo:String(date),
countFromMin:true,
ignoreRentability:true,
implicationManagerId:0,
implyOnce:true,
included:true,
onBill:true,
parentId:0,
priority:0,
quantityMax:0,
quantityMin:0,
removable:true,
required:true,
showOnAllInPriceBill:true,
showPrice:true,
subjectsMax:0,
subjectsMin:0,
supplierImpliesId:0,
validFrom:String(date),
validTo:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching implies of add-ons.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/add-ons/0/implies
Example HTTP response
Response 200
{
  "content" : [ {
    "addToParent" : 0,
    "bookDateFrom" : "string",
    "bookDateTo" : "string",
    "countFromMin" : true,
    "ignoreRentability" : true,
    "implicationManagerId" : 0,
    "implied" : [ {
      "objectId" : 0,
      "resourceId" : 0
    } ],
    "impliesId" : 0,
    "implyOnce" : true,
    "included" : true,
    "onBill" : true,
    "parent" : true,
    "parentId" : 0,
    "priority" : 0,
    "quantityMax" : 0,
    "quantityMin" : 0,
    "removable" : true,
    "required" : true,
    "resourceIds" : [ 0 ],
    "showOnAllInPriceBill" : true,
    "showPrice" : true,
    "stay" : true,
    "subjectsMax" : 0,
    "subjectsMin" : 0,
    "supplierImpliesId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.3. AdminOrganisation

List of AdminOrganisation

5.3.1. Create new admin organisation

POST /maxxton/v1/adminorganisations
Parameters
Type Name Description Schema

Body

createAdminOrganisationRequest
required

Request Body for new adminorganisation

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while creating admin organisation.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations
Request body
{
  "code" : "string",
  "currencyId" : 0,
  "description" : "string",
  "name" : "string",
  "origin" : "string",
  "originId" : "string"
}
Example HTTP response
Response 200
{
  "adminOrganisationId" : 0,
  "code" : "string",
  "currencyCode" : "string",
  "currencyId" : 0,
  "description" : "string",
  "journalId" : 0,
  "name" : "string",
  "origin" : "string",
  "originId" : "string"
}

5.3.2. Gets a page with admin organisations

GET /maxxton/v1/adminorganisations
Description

Gets a page with admin organisations. The records can be filtered based on the adminorganisation object.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
adminOrganisationId:0,
name:String,
description:String,
code:String,
currencyId:0,
currencyCode:String,
origin:String,
originId:String,
journalId:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching admin organisations.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations
Example HTTP response
Response 200
{
  "content" : [ {
    "adminOrganisationId" : 0,
    "code" : "string",
    "currencyCode" : "string",
    "currencyId" : 0,
    "description" : "string",
    "journalId" : 0,
    "name" : "string",
    "origin" : "string",
    "originId" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.3.3. Update existing admin organisation

PUT /maxxton/v1/adminorganisations/{adminOrganisationId}
Parameters
Type Name Description Schema

Path

adminOrganisationId
required

adminOrganisationId

integer (int64)

Body

updateAdminOrganisationRequest
required

updateAdminOrganisationRequest

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while updating admin organisation.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0
Request body
{
  "code" : "string",
  "currencyId" : 0,
  "description" : "string",
  "name" : "string",
  "origin" : "string",
  "originId" : "string"
}
Example HTTP response
Response 200
{
  "adminOrganisationId" : 0,
  "code" : "string",
  "currencyCode" : "string",
  "currencyId" : 0,
  "description" : "string",
  "journalId" : 0,
  "name" : "string",
  "origin" : "string",
  "originId" : "string"
}

5.3.4. Gets a page with Accounts of an admin organisation

GET /maxxton/v1/adminorganisations/{adminOrganisationId}/accounts
Description

Gets a page with Accounts of an admin organisation. The records can be filtered based on the account object.

Parameters
Type Name Description Schema

Path

adminOrganisationId
required

adminOrganisationId

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
accountId:0,
name:String,
currencyId:0,
currencyCode:String,
bankAccount:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching accounts of the admin organisations.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/accounts
Example HTTP response
Response 200
{
  "content" : [ {
    "accountId" : 0,
    "currencyCode" : "string",
    "currencyId" : 0,
    "name" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.3.5. Gets a page with financial transactions

GET /maxxton/v1/adminorganisations/{adminOrganisationId}/financialtransactions
Description

Gets a page with financial transactions.The records can be filtered based on the FinancialTransactionReport object.

Parameters
Type Name Description Schema

Path

adminOrganisationId
required

Id of the admin organisation for which financial transactions has to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
financialTransactionReportId:0,
reportNumber:0,
creationDate:String(date),
status:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching financial transactions.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/financialtransactions
Example HTTP response
Response 200
{
  "content" : [ {
    "creationDate" : "string",
    "financialTransactionReportId" : 0,
    "reportNumber" : 0,
    "status" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.3.6. update’s the financial transactions report of specific admin organisation id and financial transaction report id

PUT /maxxton/v1/adminorganisations/{adminOrganisationId}/financialtransactions/{financialTransactionReportId}
Description

updates financial transactions report of specific admin organisation id and financial transaction report id

Parameters
Type Name Description Schema

Path

adminOrganisationId
required

Id of the admin organisation for which financial transactions has to be fetched

integer (int64)

Path

financialTransactionReportId
required

Financial transaction report id for which financial transactions has to be fetched

integer (int64)

Body

updateFinancialReportRequest
required

Body to update financial transaction report

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while updating financial transactions.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/financialtransactions/0
Request body
{
  "status" : "string"
}
Example HTTP response
Response 200
{
  "creationDate" : "string",
  "financialTransactionReportId" : 0,
  "reportNumber" : 0,
  "status" : "string"
}

5.3.7. Gets a page with financial transactions journal report of admin organisation

GET /maxxton/v1/adminorganisations/{adminOrganisationId}/financialtransactions/{financialTransactionReportId}/journals
Description

Gets a page with financial transactions journal report of admin organisation. The records can be filtered based on the FinancialTransactionJournalsReport object.
The field statementHeader in the response denotes the start of a statement.

Parameters
Type Name Description Schema

Path

adminOrganisationId
required

Id of the admin organisation for which financial transactions journals report has to be fetched

integer (int64)

Path

financialTransactionReportId
required

Financial transaction report id for which financial transactions journals report has to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
status:String,
description:String,
journalType:String,
journalNumber:String,
journalPeriodNumber:String,
statementNumber:String,
statementDate:String(date),
ledgerNumber:String,
costCenter:String,
costUnit:String,
secondLedgerNumber:String,
debitVatIncluded:String,
creditVatIncluded:String,
debitVatExcluded:String,
creditVatExcluded:String,
debitVatIncludedAccCurr:String,
creditVatIncludedAccCurr:String,
debitVatExcludedAccCurr:String,
creditVatExcludedAccCurr:String,
accountCurrencyId:0,
exchangeValue:0,
accountId:0,
accountCurrencyCode:String,
adminCurrencyCode:String,
adminCurrencyId:0,
adminOrganistationCurrency:String,
accountCurrency:String,
statementHeader:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors.

500

Error occurred while fethcing financial transaction journals report of admin organisations.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/financialtransactions/0/journals
Example HTTP response
Response 200
{
  "content" : [ {
    "accountCurrency" : {
      "creditVatExcluded" : 0.0,
      "creditVatIncluded" : 0.0,
      "currencyCode" : "string",
      "currencyId" : 0,
      "debitVatExcluded" : 0.0,
      "debitVatIncluded" : 0.0,
      "exchangeRate" : 0
    },
    "accountId" : 0,
    "adminOrganistationCurrency" : {
      "creditVatExcluded" : 0.0,
      "creditVatIncluded" : 0.0,
      "currencyCode" : "string",
      "currencyId" : 0,
      "debitVatExcluded" : 0.0,
      "debitVatIncluded" : 0.0
    },
    "costCenter" : "string",
    "costUnit" : "string",
    "description" : "string",
    "journalNumber" : "string",
    "journalPeriodNumber" : "string",
    "journalType" : "string",
    "ledgerNumber" : "string",
    "secondLedgerNumber" : "string",
    "statementDate" : "string",
    "statementHeader" : true,
    "statementNumber" : "string",
    "status" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.3.8. Gets a page with owner financial transactions

GET /maxxton/v1/adminorganisations/{adminOrganisationId}/ownerfinancialtransactions
Description

Gets a page with owner financial transactions.The records can be filtered based on the OwnerFinancialTransaction object.

Parameters
Type Name Description Schema

Path

adminOrganisationId
required

Id of the admin organisation for which owner financial transactions has to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
ownerFinancialTransactionReportId:0,
reportNumber:0,
creationDate:String(date),
bookDate:String(date),
status:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching owner financial transactions.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/ownerfinancialtransactions
Example HTTP response
Response 200
{
  "content" : [ {
    "bookDate" : "string",
    "creationDate" : "string",
    "ownerFinancialTransactionReportId" : 0,
    "reportNumber" : 0,
    "status" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.3.9. Updates the owner financial transactions for specific admin organisation id and owner financial transaction id

PUT /maxxton/v1/adminorganisations/{adminOrganisationId}/ownerfinancialtransactions/{ownerFinancialTransactionId}
Description

Updates the owner financial transactions for specific admin organisation id and owner financial transaction id

Parameters
Type Name Description Schema

Path

adminOrganisationId
required

Id of the admin organisation for which owner financial transactions has to be updated

integer (int64)

Path

ownerFinancialTransactionId
required

Id of the owner financial transaction for which owner financial transactions has to be updated

integer (int64)

Body

updateOwnerFinancialTransactionRequest
required

Body of the owner financial transaction to be updated

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while updating owner financial transactions.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/ownerfinancialtransactions/0
Request body
{
  "status" : "string"
}
Example HTTP response
Response 200
{
  "bookDate" : "string",
  "creationDate" : "string",
  "ownerFinancialTransactionReportId" : 0,
  "reportNumber" : 0,
  "status" : "string"
}

5.3.10. Gets a page with owner financial transactions journal report of admin organisation

GET /maxxton/v1/adminorganisations/{adminOrganisationId}/ownerfinancialtransactions/{ownerFinancialTransactionReportId}/journals
Description

Gets a page with owner financial transactions journal report of admin organisation. The records can be filtered based on the OwnerFinancialTransactionJournalsReport object.

Parameters
Type Name Description Schema

Path

adminOrganisationId
required

Id of the admin organisation for which owner financial transactions journals report has to be fetched

integer (int64)

Path

ownerFinancialTransactionReportId
required

Financial transaction report id for which owner financial transactions journals report has to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
status:String,
description:String,
journalType:String,
journalNumber:String,
journalPeriodNumber:0,
statementNumber:String,
statementDate:String(date),
ledgerNumber:String,
costCenter:String,
costUnit:String,
secondLedgerNumber:String,
debitVatIncluded:String,
creditVatIncluded:String,
debitVatExcluded:String,
creditVatExcluded:String,
debitVatIncludedInAdminOrganisationCurrency:String,
creditVatIncludedInAdminOrganisationCurrency:String,
debitVatExcludedInAdminOrganisationCurrency:String,
creditVatExcludedInAdminOrganisationCurrency:String,
ownerCurrencyId:0,
ownerCrrencyCode:String,
exchangeValue:0,
accountId:0,
adminOrganisationCurrencyId:0,
adminOrganisationCurrencyCode:String,
adminOrganisationCurrency:String,
ownerCurrency:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors.

500

Error occurred while fethcing owner financial transaction journals report of admin organisations.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/ownerfinancialtransactions/0/journals
Example HTTP response
Response 200
{
  "content" : [ {
    "accountId" : 0,
    "adminOrganisationCurrency" : {
      "creditVatExcluded" : 0.0,
      "creditVatIncluded" : 0.0,
      "currencyCode" : "string",
      "currencyId" : 0,
      "debitVatExcluded" : 0.0,
      "debitVatIncluded" : 0.0
    },
    "costCenter" : "string",
    "costUnit" : "string",
    "description" : "string",
    "journalNumber" : "string",
    "journalPeriodNumber" : 0,
    "journalType" : "string",
    "ledgerNumber" : "string",
    "ownerCurrency" : {
      "creditVatExcluded" : 0.0,
      "creditVatIncluded" : 0.0,
      "currencyCode" : "string",
      "currencyId" : 0,
      "debitVatExcluded" : 0.0,
      "debitVatIncluded" : 0.0,
      "exchangeRate" : 0
    },
    "ownerCurrencyId" : 0,
    "secondLedgerNumber" : "string",
    "statementDate" : "string",
    "statementNumber" : "string",
    "status" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.3.11. Update’s the revenue distribution of specific admin organisation id and revenue distribution id

PUT /maxxton/v1/adminorganisations/{adminOrganisationId}/revenuedistributions/{revenueDistributionId}
Description

Updates the revenue distribution of specific admin organisation id and revenue distribution id

Parameters
Type Name Description Schema

Path

adminOrganisationId
required

Id of the admin organisation for which revenue distribution has to be updated

integer (int64)

Path

revenueDistributionId
required

Revenue distribution id for which revenue distribution has to be updated

integer (int64)

Body

updateRevenueDistributionRequest
required

Body to update revenue distribution

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while updating revenue distribution.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/revenuedistributions/0
Request body
{
  "status" : "string"
}
Example HTTP response
Response 200
{
  "adminOrganisationId" : 0,
  "bookDate" : "string",
  "creationDate" : "string",
  "revenueDistributionId" : 0,
  "revenueDistributionNumber" : 0,
  "status" : "string"
}

5.3.12. Gets a page with revenue distribution journal of admin organisation

GET /maxxton/v1/adminorganisations/{adminOrganisationId}/revenuedistributions/{revenueDistributionId}/journals
Description

Gets a page with revenue distribution journal of admin organisation. The records can be filtered based on the RevenueDistributionJournal object.

Parameters
Type Name Description Schema

Path

adminOrganisationId
required

Id of the admin organisation for which revenue distribution journals has to be fetched

integer (int64)

Path

revenueDistributionId
required

revenue distribution id for which revenue distribution journals has to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
description:String,
journalType:String,
journalNumber:String,
journalPeriodNumber:0,
ledgerNumber:String,
costCenter:String,
costUnit:String,
secondLedgerNumber:String,
debitVatIncludedDistributionChannelCurrency:String,
creditVatIncludedDistributionChannelCurrency:String,
debitVatExcludedDistributionChannelCurrency:String,
creditVatExcludedDistributionChannelCurrency:String,
debitVatIncluded:String,
creditVatIncluded:String,
debitVatExcluded:String,
creditVatExcluded:String,
exchangeValue:0,
distributionChannelCurrencyCode:String,
distributionChannelCurrencyId:0,
adminCurrencyCode:String,
adminCurrencyId:0,
adminOrganistationCurrency:String,
distributionchannelCurrency:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors.

500

Error occurred while fethcing revenue distribution journals of admin organisations.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/revenuedistributions/0/journals
Example HTTP response
Response 200
{
  "content" : [ {
    "adminOrganistationCurrency" : {
      "creditVatExcluded" : 0.0,
      "creditVatIncluded" : 0.0,
      "currencyCode" : "string",
      "currencyId" : 0,
      "debitVatExcluded" : 0.0,
      "debitVatIncluded" : 0.0
    },
    "costCenter" : "string",
    "costUnit" : "string",
    "description" : "string",
    "distributionchannelCurrency" : {
      "creditVatExcluded" : 0.0,
      "creditVatIncluded" : 0.0,
      "currencyCode" : "string",
      "currencyId" : 0,
      "debitVatExcluded" : 0.0,
      "debitVatIncluded" : 0.0,
      "exchangeRate" : 0
    },
    "journalNumber" : "string",
    "journalPeriodNumber" : 0,
    "journalType" : "string",
    "ledgerNumber" : "string",
    "secondLedgerNumber" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.3.13. Gets a page with revenue distributions of an admin organisation

GET /maxxton/v1/adminorganisations/{id}/revenuedistributions
Description

Gets a page with revenue distributions of an admin organisation. The records can be filtered based on the RevenueDistribution object.

Parameters
Type Name Description Schema

Path

id
required

id

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
revenueDistributionId:0,
revenueDistributionNumber:0,
creationDate:String(date),
adminOrganisationId:0,
status:String,
bookDate:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching revenue distributions of the admin organisations.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/adminorganisations/0/revenuedistributions
Example HTTP response
Response 200
{
  "content" : [ {
    "adminOrganisationId" : 0,
    "bookDate" : "string",
    "creationDate" : "string",
    "revenueDistributionId" : 0,
    "revenueDistributionNumber" : 0,
    "status" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.4. Allotment

Guaranteed availability for a specific distribution channel

5.4.1. Get allotments

GET /maxxton/v1/allotments
Description

Gets a page with allotments. The allotment is active when not removed(isEnactive false) and no allotment release rules are valid(allotment can be released partially). A distribution channel is only allowed to book from allotment or the usual reservability not both.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
allotmentId:0,
distributionChannelId:0,
resourceId:0,
name:String,
description:String,
type:String,
exceedLimit:0,
expirePeriod:0,
amount:0,
modified:String(date),
isEnactive:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

204

No allotments found for given criteria.

500

Error occurred while fetching allotments

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/allotments
Example HTTP response
Response 200
{
  "content" : [ {
    "allotmentId" : 0,
    "amount" : 0,
    "description" : "string",
    "distributionChannelId" : 0,
    "exceedLimit" : 0,
    "expirePeriod" : 0,
    "hasObjects" : true,
    "isEnactive" : true,
    "modified" : "string",
    "name" : "string",
    "periods" : [ {
      "endDate" : "string",
      "quantity" : 0,
      "startDate" : "string",
      "unitIds" : [ 0 ]
    } ],
    "resourceId" : 0,
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}
Response 204
{
  "content" : [ {
    "allotmentId" : 0,
    "amount" : 0,
    "description" : "string",
    "distributionChannelId" : 0,
    "exceedLimit" : 0,
    "expirePeriod" : 0,
    "hasObjects" : true,
    "isEnactive" : true,
    "modified" : "string",
    "name" : "string",
    "periods" : [ {
      "endDate" : "string",
      "quantity" : 0,
      "startDate" : "string",
      "unitIds" : [ 0 ]
    } ],
    "resourceId" : 0,
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.4.2. Get allotment releases

GET /maxxton/v1/allotments/releases
Description

Allotment releases are rules which needs to be combined with allotment to release the allotment so it will be available to other distribution channels again. This can be done partially or totally. The allotment rules will not be removed in case it is released because of this it should be combined with the allotment call.<r>The difference between removing allotment and releasing allotment is that when you remove the allotment its gone, when it is released it can reduce the allotment or completely removeit. If there are 4 units available in allotment, 2 are released. That would mean 2 units are still available from allotment.It also supports pageable.The allotment release is active when the performedDate is not null and enactive is false. isEnactive is true when the allotment release is removed.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
allotmentReleaseId:0,
distributionChannelId:0,
name:String,
startDate:String(date),
endDate:String(date),
releasePeriod:0,
releaseDate:String(date),
performedDate:String(date),
resourceId:0,
resortId:0,
isEnactive:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

204

No allotment releases found for given criteria.

500

Error occurred while fetching allotment releases

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/allotments/releases
Example HTTP response
Response 200
{
  "content" : [ {
    "allotmentReleaseId" : 0,
    "distributionChannelId" : 0,
    "endDate" : "string",
    "isEnactive" : true,
    "name" : "string",
    "performedDate" : "string",
    "releaseDate" : "string",
    "releasePeriod" : 0,
    "resortId" : 0,
    "resourceId" : 0,
    "startDate" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}
Response 204
{
  "content" : [ {
    "allotmentReleaseId" : 0,
    "distributionChannelId" : 0,
    "endDate" : "string",
    "isEnactive" : true,
    "name" : "string",
    "performedDate" : "string",
    "releaseDate" : "string",
    "releasePeriod" : 0,
    "resortId" : 0,
    "resourceId" : 0,
    "startDate" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.5. Amenity

Features or facilities available on a resort or an accommodation type

5.5.1. Gets a page with Amenities

GET /maxxton/v1/amenities
Description

Gets a page with amenities.The records can be filtered based on amenity object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
amenityId:0,
type:String,
identifier:String,
listMulti:true,
numberMinimum:0,
numberMaximum:0,
percentageDiscountPriority:0,
source:String,
standardCodeAmenityId:0,
linkedAmenityId:0,
parentAmenityId:0,
archivedFrom:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching Amenities.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/amenities
Example HTTP response
Response 200
{
  "content" : [ {
    "amenityId" : 0,
    "archivedFrom" : "string",
    "categories" : [ {
      "code" : "string",
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    } ],
    "identifier" : "string",
    "linkedAmenityId" : 0,
    "listMulti" : true,
    "metric" : {
      "code" : "string",
      "metricId" : 0,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "numberMaximum" : 0,
    "numberMinimum" : 0,
    "parentAmenityId" : 0,
    "percentageDiscountPriority" : 0,
    "source" : "string",
    "standardCodeAmenityId" : 0,
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string"
    } ],
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.5.2. Gets a page with amenity categories

GET /maxxton/v1/amenities/categories
Description

Gets a page with amenity categories.The records can be filtered based on category set object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
amenityCategorySetId:0,
code:String,
priority:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching amenity categories.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/amenities/categories
Example HTTP response
Response 200
{
  "content" : [ {
    "amenityCategories" : [ {
      "amenityCategoryId" : 0,
      "code" : "string",
      "priority" : 0,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    } ],
    "amenityCategorySetId" : 0,
    "code" : "string",
    "priority" : 0,
    "translations" : [ {
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.5.3. Gets a page with amenity categories

GET /maxxton/v1/amenities/details
Description

Gets a page with amenity categories.The records can be filtered based on category set object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
amenityCategorySetId:0,
code:String,
priority:0)

Query

returnSections
optional

List of constant strings to return only the selected sections in the response. The possible values are IMAGES. This is recommended to use to reduce the size of the response body and improve the performance of the call.

< enum (IMAGES) > array(multi)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching amenity categories.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/amenities/details
Example HTTP response
Response 200
{
  "content" : [ {
    "amenityCategories" : [ {
      "amenities" : [ {
        "amenityId" : 0,
        "amenityLinkId" : 0,
        "archivedFrom" : "string",
        "code" : "string",
        "endDate" : "string",
        "images" : [ {
          "endDate" : "string",
          "fileName" : "string",
          "imageId" : 0,
          "imageOrientation" : "string",
          "imageType" : "string",
          "mimeType" : "string",
          "modifiedDate" : "string",
          "sequenceNumber" : 0,
          "startDate" : "string",
          "tags" : [ {
            "name" : "string",
            "tagId" : 0
          } ],
          "translations" : [ {
            "description" : "string",
            "imageId" : 0,
            "language" : "string",
            "name" : "string"
          } ],
          "uploadDate" : "string",
          "url" : "string",
          "urls" : {
            "string" : "string"
          },
          "version" : 0
        } ],
        "metric" : {
          "code" : "string",
          "metricId" : 0,
          "translations" : [ {
            "language" : "string",
            "name" : "string"
          } ]
        },
        "numberValue" : 0,
        "origin" : "string",
        "parentAmenityId" : 0,
        "preferenceExtraId" : 0,
        "startDate" : "string",
        "textValue" : "string",
        "translations" : [ {
          "description" : "string",
          "language" : "string",
          "name" : "string"
        } ],
        "type" : "string",
        "visible" : true
      } ],
      "amenityCategoryId" : 0,
      "amenityGroups" : [ {
        "amenities" : [ {
          "amenityId" : 0,
          "amenityLinkId" : 0,
          "archivedFrom" : "string",
          "code" : "string",
          "endDate" : "string",
          "images" : [ {
            "endDate" : "string",
            "fileName" : "string",
            "imageId" : 0,
            "imageOrientation" : "string",
            "imageType" : "string",
            "mimeType" : "string",
            "modifiedDate" : "string",
            "sequenceNumber" : 0,
            "startDate" : "string",
            "tags" : [ {
              "name" : "string",
              "tagId" : 0
            } ],
            "translations" : [ {
              "description" : "string",
              "imageId" : 0,
              "language" : "string",
              "name" : "string"
            } ],
            "uploadDate" : "string",
            "url" : "string",
            "urls" : {
              "string" : "string"
            },
            "version" : 0
          } ],
          "metric" : {
            "code" : "string",
            "metricId" : 0,
            "translations" : [ {
              "language" : "string",
              "name" : "string"
            } ]
          },
          "numberValue" : 0,
          "origin" : "string",
          "parentAmenityId" : 0,
          "preferenceExtraId" : 0,
          "startDate" : "string",
          "textValue" : "string",
          "translations" : [ {
            "description" : "string",
            "language" : "string",
            "name" : "string"
          } ],
          "type" : "string",
          "visible" : true
        } ],
        "amenityId" : 0,
        "amenityLinkId" : 0,
        "archivedFrom" : "string",
        "code" : "string",
        "endDate" : "string",
        "metric" : {
          "code" : "string",
          "metricId" : 0,
          "translations" : [ {
            "language" : "string",
            "name" : "string"
          } ]
        },
        "numberValue" : 0,
        "origin" : "string",
        "parentAmenityId" : 0,
        "preferenceExtraId" : 0,
        "startDate" : "string",
        "textValue" : "string",
        "translations" : [ {
          "description" : "string",
          "language" : "string",
          "name" : "string"
        } ],
        "type" : "string",
        "visible" : true
      } ],
      "code" : "string",
      "priority" : 0,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    } ],
    "amenityCategorySetId" : 0,
    "code" : "string",
    "priority" : 0,
    "translations" : [ {
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.6. Authentication

Authorization Controller

5.6.1. Login

POST /maxxton/v1/authenticate
Description

Returns generated access token. This can be used in further calls to authenticate by adding this to the header parameters with key: Authorization and value: {token_type} {access_token}.Concern or scope can be used for passing the concern parameter but scope is preferred as it is fully oauth2 compatible. Either of the two parameters i.e Concern or Scope is mandatory.

Parameters
Type Name Description Schema

Query

client_id
required

This is the maxxton login name provided by Maxxton as part of API credentials.

string

Query

client_secret
required

This is the API key provided by Maxxton as part of API credentials.

string

Query

concern
optional

Concern code where you want to login(3 digits), alias for scope(deprecated)

string

Query

grant_type
required

GrantType which is used to authenticate (client_credentials etc)

string

Query

scope
required

scope of authorization.Contains a concern parameter to make it compatible with oauth2 standard.

string

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while processing.

No Content

Consumes
  • application/json

Produces
  • application/json;charset=UTF-8

Example HTTP request
Request path
/maxxton/v1/authenticate?client_id=string&client_secret=string&grant_type=string&scope=string
Example HTTP response
Response 200
{
  "access_token" : "string",
  "details" : {
    "apiKeyDistributionchannelId" : 0,
    "api_key_id" : 0,
    "client_id" : "string",
    "client_type" : "string",
    "concern_id" : 0,
    "environment" : [ "string" ]
  },
  "expires_in" : 0,
  "jti" : "string",
  "scope" : "string",
  "token_type" : "string"
}

5.7. Brands

Different labels used for marketing of an accommodation type

5.7.1. Get brands

GET /maxxton/v1/brands
Description

Gets a page with brands. The records can be filtered based on the brand object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
brandId:0,
defaultBrand:true,
name:String,
reservationCategoryId:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching brands.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/brands
Example HTTP response
Response 200
{
  "content" : [ {
    "brandId" : 0,
    "defaultBrand" : true,
    "name" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.7.2. Gets an brand of a specific brand id.

GET /maxxton/v1/brands/{brandId}
Description

Gets brand based on Brand Id

Parameters
Type Name Description Schema

Path

brandId
required

Brand id to fetch brand

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching Brand.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/brands/0
Example HTTP response
Response 200
{
  "brandId" : 0,
  "defaultBrand" : true,
  "name" : "string"
}

5.8. Contract Types

Type of agreement between the owner and the resort

5.8.1. Gets a page with contract types

GET /maxxton/v1/contracts/types
Description

Gets a Page of Contract Types. The records can be filtered based on contract type object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
contractTypeId:0,
code:String,
remark:String,
settlementMethod:String,
settlementPct:0,
redirectionMinAmount:0,
contractKind:String,
priority:0,
round:true,
ownUsageAllowed:true,
archivedFrom:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching contract Types.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/contracts/types
Example HTTP response
Response 200
{
  "content" : [ {
    "archivedFrom" : "string",
    "code" : "string",
    "contractKind" : "string",
    "contractTypeId" : 0,
    "nonRentable" : true,
    "ownUsageAllowed" : true,
    "priority" : 0,
    "redirectionMinAmount" : 0,
    "remark" : "string",
    "round" : true,
    "settlementMethod" : "string",
    "settlementPct" : 0,
    "translations" : [ {
      "contractTypeId" : 0,
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.9. Contracts

Formal legal agreement between the owner and the resort

5.9.1. Creats a new Contract

POST /maxxton/v1/contracts
Description

Gets a newly created Contract

Parameters
Type Name Description Schema

Body

contractDetail
required

Request Body for new contract.

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching contract.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/contracts
Request body
{
  "code" : "string",
  "contractId" : 0,
  "contractTypeId" : 0,
  "endDate" : "string",
  "name" : "string",
  "origin" : "string",
  "originId" : "string",
  "ownerId" : 0,
  "poolOwnerId" : 0,
  "resourceId" : 0,
  "startDate" : "string",
  "targetAmount" : 0.0,
  "unitId" : 0
}
Example HTTP response
Response 200
{
  "code" : "string",
  "contractId" : 0,
  "contractTypeId" : 0,
  "endDate" : "string",
  "name" : "string",
  "origin" : "string",
  "originId" : "string",
  "ownerId" : 0,
  "poolOwnerId" : 0,
  "resourceId" : 0,
  "startDate" : "string",
  "targetAmount" : 0.0,
  "unitId" : 0
}

5.9.2. Gets a page with Contracts

GET /maxxton/v1/contracts
Description

Gets a Page of Contracts. The records can be filtered based on contract object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
contractId:0,
code:String,
name:String,
ownerId:0,
unitId:0,
startDate:String(date),
endDate:String(date),
contractTypeId:0,
resourceId:0,
poolOwnerId:0,
origin:String,
originId:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching contracts.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/contracts
Example HTTP response
Response 200
{
  "content" : [ {
    "code" : "string",
    "contractId" : 0,
    "contractTypeId" : 0,
    "endDate" : "string",
    "name" : "string",
    "origin" : "string",
    "originId" : "string",
    "ownerId" : 0,
    "poolOwnerId" : 0,
    "resourceId" : 0,
    "startDate" : "string",
    "targetAmount" : 0.0,
    "unitId" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.9.3. Gets a Contract by contract id

GET /maxxton/v1/contracts/{contractId}
Description

Gets a Contract associated with the contractId

Parameters
Type Name Description Schema

Path

contractId
required

Contract Id to fetch contract.

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching contract.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/contracts/0
Example HTTP response
Response 200
{
  "code" : "string",
  "contractId" : 0,
  "contractTypeId" : 0,
  "endDate" : "string",
  "name" : "string",
  "origin" : "string",
  "originId" : "string",
  "ownerId" : 0,
  "poolOwnerId" : 0,
  "resourceId" : 0,
  "startDate" : "string",
  "targetAmount" : 0.0,
  "unitId" : 0
}

5.9.4. updates a Contract

PUT /maxxton/v1/contracts/{contractId}
Description

Updates a Contract associated with the contractId

Parameters
Type Name Description Schema

Path

contractId
required

Contract Id to fetch contract.

integer (int64)

Body

contractDetail
required

Contract Id to fetch contract.

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching contract.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/contracts/0
Request body
{
  "code" : "string",
  "contractId" : 0,
  "contractTypeId" : 0,
  "endDate" : "string",
  "name" : "string",
  "origin" : "string",
  "originId" : "string",
  "ownerId" : 0,
  "poolOwnerId" : 0,
  "resourceId" : 0,
  "startDate" : "string",
  "targetAmount" : 0.0,
  "unitId" : 0
}
Example HTTP response
Response 200
{
  "code" : "string",
  "contractId" : 0,
  "contractTypeId" : 0,
  "endDate" : "string",
  "name" : "string",
  "origin" : "string",
  "originId" : "string",
  "ownerId" : 0,
  "poolOwnerId" : 0,
  "resourceId" : 0,
  "startDate" : "string",
  "targetAmount" : 0.0,
  "unitId" : 0
}

5.10. Countries

List of countries.

5.10.1. Gets all countries.

GET /maxxton/v1/countries
Description

Gets a list of all countries, records can be filtered based on fields on country object.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
countryId:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

< Country > array

500

Error occurred while fetching countries

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/countries
Example HTTP response
Response 200
[ {
  "code" : "string",
  "countryId" : 0,
  "default" : true,
  "translations" : [ {
    "language" : "string",
    "name" : "string"
  } ]
} ]

5.11. Currency

List of currencies

5.11.1. Gets a page with currencies

GET /maxxton/v1/currencies
Description

Gets a page with currencies.The records can be filtered based on the currency object.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
currencyId:0,
code:String,
name:String,
symbol:String,
currencyLanguage:String,
currencyCountry:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching currencies.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/currencies
Example HTTP response
Response 200
{
  "content" : [ {
    "code" : "string",
    "currencyCountry" : "string",
    "currencyId" : 0,
    "currencyLanguage" : "string",
    "name" : "string",
    "symbol" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.11.2. Gets the details of specific currency

GET /maxxton/v1/currencies/{currencyId}
Description

Gets details of the currency associated with a particular currencyId.

Parameters
Type Name Description Schema

Path

currencyId
required

currencyId

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching details for specific currency.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/currencies/0
Example HTTP response
Response 200
{
  "code" : "string",
  "currencyCountry" : "string",
  "currencyId" : 0,
  "currencyLanguage" : "string",
  "name" : "string",
  "symbol" : "string"
}

5.12. Customer Status

Statuses given to customers as per customer’s reservation history

5.12.1. Gets customers' status

GET /maxxton/v1/customerstatus
Description

Gets a page with customers' status. The records can be filtered based on customerstatus object and entities in customercluster which is present in customerstatus object. It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
customerId:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching customers' status

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customerstatus
Example HTTP response
Response 200
{
  "content" : [ {
    "customerClusters" : [ {
      "clusterId" : 0,
      "description" : "string",
      "name" : "string"
    } ],
    "customerId" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.13. Customers

Guest who can book reservations

5.13.1. Adds a new Customer

POST /maxxton/v1/customers
Description

Adds a new Customer. The details are to be added in request body.
Note: The country field in mailAddress is not allowed while adding a customer. Email id field in the customer address entity is also used as customer login

Parameters
Type Name Description Schema

Body

customer
required

A customer object to be added

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while creating customers

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers
Request body
{
  "alternateName" : "string",
  "bicSwift" : "string",
  "birthDate" : "string",
  "clusterManagerId" : 0,
  "companyName" : "string",
  "contactManagerId" : 0,
  "customerGroupId" : 0,
  "customerId" : 0,
  "deviceManagerId" : 0,
  "emailAllowed" : true,
  "eventManagerId" : 0,
  "fileManagerId" : 0,
  "firstName" : "string",
  "ibanNumber" : "string",
  "invoiceAddressManagerId" : 0,
  "languageId" : 0,
  "lastName" : "string",
  "login" : "string",
  "mailAddress" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "addressId" : 0,
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "mailAddressManagerId" : 0,
  "mailAllowed" : true,
  "memoManagerId" : 0,
  "middle" : "string",
  "owner" : true,
  "password" : "string",
  "previousPmsId" : 0,
  "questionnaireUnsubscribed" : true,
  "sex" : "string",
  "signatureDate" : "string",
  "socialSecurityNumber" : "string",
  "titleId" : 0
}
Example HTTP response
Response 200
{
  "alternateName" : "string",
  "bicSwift" : "string",
  "birthDate" : "string",
  "clusterManagerId" : 0,
  "companyName" : "string",
  "contactManagerId" : 0,
  "customerGroupId" : 0,
  "customerId" : 0,
  "deviceManagerId" : 0,
  "emailAllowed" : true,
  "eventManagerId" : 0,
  "fileManagerId" : 0,
  "firstName" : "string",
  "ibanNumber" : "string",
  "invoiceAddressManagerId" : 0,
  "languageId" : 0,
  "lastName" : "string",
  "login" : "string",
  "mailAddress" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "addressId" : 0,
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "mailAddressManagerId" : 0,
  "mailAllowed" : true,
  "memoManagerId" : 0,
  "middle" : "string",
  "owner" : true,
  "password" : "string",
  "previousPmsId" : 0,
  "questionnaireUnsubscribed" : true,
  "sex" : "string",
  "signatureDate" : "string",
  "socialSecurityNumber" : "string",
  "titleId" : 0
}

5.13.2. Gets customers

GET /maxxton/v1/customers
Description

Gets a page with customers. The records can be filtered based on customer object.It also supports pageable.

Parameters
Type Name Description Schema

Query

email
optional

Filter customer’s on email id

string

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
customerGroupId:0,
titleId:0,
firstName:String,
middle:String,
lastName:String,
alternateName:String,
emailAllowed:true,
mailAllowed:true,
signatureDate:String(date),
socialSecurityNumber:String,
sex:String,
languageId:0,
ibanNumber:String,
bicSwift:String,
birthDate:String(date),
companyName:String,
password:String,
login:String,
previousPmsId:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching customers

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers
Example HTTP response
Response 200
{
  "content" : [ {
    "alternateName" : "string",
    "bicSwift" : "string",
    "birthDate" : "string",
    "clusterManagerId" : 0,
    "companyName" : "string",
    "contactManagerId" : 0,
    "customerGroupId" : 0,
    "customerId" : 0,
    "deviceManagerId" : 0,
    "emailAllowed" : true,
    "eventManagerId" : 0,
    "fileManagerId" : 0,
    "firstName" : "string",
    "ibanNumber" : "string",
    "invoiceAddressManagerId" : 0,
    "languageId" : 0,
    "lastName" : "string",
    "login" : "string",
    "mailAddress" : {
      "accuracy" : "string",
      "address1" : "string",
      "address2" : "string",
      "address3" : "string",
      "addressId" : 0,
      "alternateContactPerson" : "string",
      "boxNumber" : "string",
      "city" : "string",
      "country" : {
        "code" : "string",
        "countryId" : 0,
        "default" : true,
        "translations" : [ {
          "language" : "string",
          "name" : "string"
        } ]
      },
      "countryId" : 0,
      "dateBegin" : "string",
      "dateEnd" : "string",
      "district" : "string",
      "email" : "string",
      "exposeLocation" : true,
      "fax" : "string",
      "houseNumber" : "string",
      "houseNumberSuffix" : "string",
      "latitude" : 0.0,
      "longitude" : 0.0,
      "managerId" : 0,
      "mobilePhone" : "string",
      "mobilePhone2" : "string",
      "municipality" : "string",
      "poBox" : "string",
      "poBoxCity" : "string",
      "poBoxZipcode" : "string",
      "privatePhone" : "string",
      "stateId" : 0,
      "workPhone" : "string",
      "zipCode" : "string"
    },
    "mailAddressManagerId" : 0,
    "mailAllowed" : true,
    "memoManagerId" : 0,
    "middle" : "string",
    "owner" : true,
    "password" : "string",
    "previousPmsId" : 0,
    "questionnaireUnsubscribed" : true,
    "sex" : "string",
    "signatureDate" : "string",
    "socialSecurityNumber" : "string",
    "titleId" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.13.3. Authenticate a customer

POST /maxxton/v1/customers/login
Description

Authenticate a customer based on login credentials and return customer details if the customer credentials are authentic.

Parameters
Type Name Description Schema

Body

customerLogin
optional

Login credentials of the customer to be authenticated.

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

401

Invalid credentials.

No Content

500

Error occurred while authenticating this customer

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/login
Request body
{
  "login" : "string",
  "password" : "string"
}
Example HTTP response
Response 200
{
  "alternateName" : "string",
  "bicSwift" : "string",
  "birthDate" : "string",
  "clusterManagerId" : 0,
  "companyName" : "string",
  "contactManagerId" : 0,
  "customerGroupId" : 0,
  "customerId" : 0,
  "deviceManagerId" : 0,
  "emailAllowed" : true,
  "eventManagerId" : 0,
  "fileManagerId" : 0,
  "firstName" : "string",
  "ibanNumber" : "string",
  "invoiceAddressManagerId" : 0,
  "languageId" : 0,
  "lastName" : "string",
  "login" : "string",
  "mailAddress" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "addressId" : 0,
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "mailAddressManagerId" : 0,
  "mailAllowed" : true,
  "memoManagerId" : 0,
  "middle" : "string",
  "owner" : true,
  "password" : "string",
  "previousPmsId" : 0,
  "questionnaireUnsubscribed" : true,
  "sex" : "string",
  "signatureDate" : "string",
  "socialSecurityNumber" : "string",
  "titleId" : 0
}

5.13.4. Gets a page of customer phone calls

GET /maxxton/v1/customers/phonecalls
Description

Gets a page with customerPhonecalls. The records can be filtered based on customerPhoneCall object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
customerPhoneCallId:0,
type:String,
customerId:0,
employeeId:0,
startTime:String(date),
endTime:String(date),
phoneNumber:String,
memoCategoryId:0,
note:String,
resortId:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching customer phone calls

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/phonecalls
Example HTTP response
Response 200
{
  "content" : [ {
    "customerId" : 0,
    "customerPhoneCallId" : 0,
    "employeeId" : 0,
    "endTime" : "string",
    "memoCategoryId" : 0,
    "note" : "string",
    "phoneNumber" : "string",
    "resortId" : 0,
    "startTime" : "string",
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.13.5. Get a single Customer by customer id

GET /maxxton/v1/customers/{customerId}
Description

Gets the details of the customer specified to a particular id passed in the endpoint.

Parameters
Type Name Description Schema

Path

customerId
required

An Id of customer to be fetched

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

No customer found for given customer id.

No Content

500

Error occurred while fetching this customer

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/0
Example HTTP response
Response 200
{
  "alternateName" : "string",
  "bicSwift" : "string",
  "birthDate" : "string",
  "clusterManagerId" : 0,
  "companyName" : "string",
  "contactManagerId" : 0,
  "customerGroupId" : 0,
  "customerId" : 0,
  "deviceManagerId" : 0,
  "emailAllowed" : true,
  "eventManagerId" : 0,
  "fileManagerId" : 0,
  "firstName" : "string",
  "ibanNumber" : "string",
  "invoiceAddressManagerId" : 0,
  "languageId" : 0,
  "lastName" : "string",
  "login" : "string",
  "mailAddress" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "addressId" : 0,
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "mailAddressManagerId" : 0,
  "mailAllowed" : true,
  "memoManagerId" : 0,
  "middle" : "string",
  "owner" : true,
  "password" : "string",
  "previousPmsId" : 0,
  "questionnaireUnsubscribed" : true,
  "sex" : "string",
  "signatureDate" : "string",
  "socialSecurityNumber" : "string",
  "titleId" : 0
}

5.13.6. Update customer details

PUT /maxxton/v1/customers/{customerId}
Description

Update an existing customer based on given details.
Note: Some of the fields of customer entity are restricted fields based on access rights. So, such fields data will be masked as * in GET customer endpoints, if your login client id doesn’t have access to those fields. The fields which are not masked in the response to GET customer endpoints, could only can be modified using this endpoint.

Parameters
Type Name Description Schema

Path

customerId
required

Customer id to fetch files associated with the customer

integer (int64)

Body

customerUpdate
optional

Request body to specify the modifications needed for a customer.

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

No customer found for given customer id.

No Content

500

Error occurred while updating details for this customer

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/0
Request body
{
  "alternateName" : "string",
  "bicSwift" : "string",
  "birthDate" : "string",
  "emailAllowed" : true,
  "firstName" : "string",
  "ibanNumber" : "string",
  "language" : "string",
  "lastName" : "string",
  "mailAddress" : {
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "countryCode" : "string",
    "district" : "string",
    "email" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "mailAllowed" : true,
  "middle" : "string",
  "sex" : "string",
  "titleId" : 0
}
Example HTTP response
Response 200
{
  "alternateName" : "string",
  "bicSwift" : "string",
  "birthDate" : "string",
  "clusterManagerId" : 0,
  "companyName" : "string",
  "contactManagerId" : 0,
  "customerGroupId" : 0,
  "customerId" : 0,
  "deviceManagerId" : 0,
  "emailAllowed" : true,
  "eventManagerId" : 0,
  "fileManagerId" : 0,
  "firstName" : "string",
  "ibanNumber" : "string",
  "invoiceAddressManagerId" : 0,
  "languageId" : 0,
  "lastName" : "string",
  "login" : "string",
  "mailAddress" : {
    "accuracy" : "string",
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "addressId" : 0,
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "countryId" : 0,
    "dateBegin" : "string",
    "dateEnd" : "string",
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "managerId" : 0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "stateId" : 0,
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "mailAddressManagerId" : 0,
  "mailAllowed" : true,
  "memoManagerId" : 0,
  "middle" : "string",
  "owner" : true,
  "password" : "string",
  "previousPmsId" : 0,
  "questionnaireUnsubscribed" : true,
  "sex" : "string",
  "signatureDate" : "string",
  "socialSecurityNumber" : "string",
  "titleId" : 0
}

5.13.7. Gets history associated with customers

GET /maxxton/v1/customers/{customerId}/communications
Description

Get a page with communication call done with a client associated with a customer on reservation basis.The records are filtered based on communication object.

Parameters
Type Name Description Schema

Path

customerId
required

Customer id for which the communication calls are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
customerCommunicationId:0,
sendDate:String(date),
sendingType:String,
reservationId:0,
message:String,
senderEmail:String,
subject:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

No customer or customer communication found for given customer id.

No Content

500

Error occurred while fetching customer communication calls

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/0/communications
Example HTTP response
Response 200
{
  "content" : [ {
    "attachments" : [ {
      "endDate" : "string",
      "fileId" : 0,
      "fileName" : "string",
      "fileSize" : 0,
      "fileType" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string",
      "uploadDate" : "string",
      "validFrom" : "string",
      "validTo" : "string"
    } ],
    "customerCommunicationId" : 0,
    "message" : "string",
    "reportCode" : "string",
    "reportType" : "string",
    "reservationId" : 0,
    "sendDate" : "string",
    "senderEmail" : "string",
    "sendingType" : "string",
    "subject" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.13.8. updates the customer credentials

PUT /maxxton/v1/customers/{customerId}/credentials
Description

This endpoint can update the login and password of a customer in Maxxton. The /maxxton/v1/customers/login can be used to check if this login is correct and can be used to authenticate a user in an external system. There is no user session management available. The login and password can be changed in this call. The password can not be fetched from the API because of security reasons. In case the login field or password field is kept empty the existing value will be kept.

Parameters
Type Name Description Schema

Path

customerId
required

Customer id to fetch files associated with the customer

integer (int64)

Body

customerCredential
optional

Login credentials of the customer to be updated.

Responses
HTTP Code Description Schema

200

OK

No Content

204

The request is completed successfully without any errors

No Content

500

Error occurred while updating this customer credentials

No Content

Consumes
  • application/json

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/0/credentials
Request body
{
  "login" : "string",
  "password" : "string"
}

5.13.9. Get status for a specific customer

GET /maxxton/v1/customers/{customerId}/customerstatus
Description

Gets the status of the customer specified to a particular id passed in the endpoint.

Parameters
Type Name Description Schema

Path

customerId
required

customerId

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

No customer found for given customer id.

No Content

500

Error occurred while fetching this customer

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/0/customerstatus
Example HTTP response
Response 200
{
  "customerClusters" : [ {
    "clusterId" : 0,
    "description" : "string",
    "name" : "string"
  } ],
  "customerId" : 0
}

5.13.10. Gets all files

GET /maxxton/v1/customers/{customerId}/files
Description

Get a page with files associated with a customer.The records are filtered based on filebase object.

Parameters
Type Name Description Schema

Path

customerId
required

Customer id for which the files are to be fetched

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
fileId:0,
name:String,
fileName:String,
fileSize:0,
fileType:String,
uploadDate:String(date),
endDate:String(date),
shortDescription:String,
validFrom:String(date),
validTo:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

No customer or files found for given customer id.

No Content

500

Error occurred while fetching files

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/0/files
Example HTTP response
Response 200
{
  "content" : [ {
    "endDate" : "string",
    "fileId" : 0,
    "fileName" : "string",
    "fileSize" : 0,
    "fileType" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string",
    "uploadDate" : "string",
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.13.11. Get the generated hash and provides link

GET /maxxton/v1/customers/{customerId}/files/{fileId}
Description

Get the generated hash for specific file which has information related to file

Parameters
Type Name Description Schema

Path

customerId
required

Customer id to fetch files associated with the customer

integer (int64)

Path

fileId
required

file id to fetch a specific file

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

No document found for specific file id.

No Content

500

Error occured while generating hash

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/0/files/0
Example HTTP response
Response 200
{
  "downloadLink" : "string"
}

5.13.12. Create customer memo

POST /maxxton/v1/customers/{customerId}/memos
Description

Create customer memo

Parameters
Type Name Description Schema

Path

customerId
required

Customer id to fetch files associated with the customer

integer (int64)

Body

memoRequest
optional

Request body for customer memo.

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

401

Invalid credentials.

No Content

500

Error occurred while creating customer memo

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/0/memos
Request body
{
  "memoCategoryId" : 0,
  "onCheckin" : true,
  "onInvoice" : true,
  "sensitive" : true,
  "text" : "string"
}
Example HTTP response
Response 200
{
  "content" : "string",
  "creationDate" : "string",
  "employeeId" : 0,
  "memoCategoryId" : 0,
  "memoId" : 0,
  "predefinedMemoId" : 0
}

5.13.13. Get memos for a specific customer

GET /maxxton/v1/customers/{customerId}/memos
Description

Gets the memos of the customer specified to a particular id passed in the endpoint.The records can be filtered based on memo object. In order to filter creationDate the format of date passed should be: YYYY-MM-DDThh:mm:ss. It also supports pageable.

Parameters
Type Name Description Schema

Path

customerId
required

customerId

integer (int64)

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
memoId:0,
employeeId:0,
content:String,
creationDate:String(date),
predefinedMemoId:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

No customer found for given customer id.

No Content

500

Error occurred while fetching memo for this customer

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/customers/0/memos
Example HTTP response
Response 200
{
  "content" : [ {
    "content" : "string",
    "creationDate" : "string",
    "employeeId" : 0,
    "memoCategoryId" : 0,
    "memoId" : 0,
    "predefinedMemoId" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.13.14. Get all customer titles.

GET /maxxton/v1/titles
Description

Get list of all customer titles, records can be filtered based on fields of customer title object.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
titleId:0,
code:String,
priority:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

< CustomerTitle > array

500

Error occurred while fetching customer titles

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/titles
Example HTTP response
Response 200
[ {
  "code" : "string",
  "priority" : 0,
  "titleId" : 0,
  "translations" : [ {
    "language" : "string",
    "title" : "string"
  } ]
} ]

5.14. DistributionChannels

Channel through which reservations can be booked

5.14.1. Gets a page with DistributionChannels

GET /maxxton/v1/distributionchannels
Description

Get a page with DistributionChannels. The records can be filtered based on distribution channel object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
distributionChannelId:0,
code:String,
name:String,
representationSetParentId:0,
allotmentOnly:true,
activeStartDate:String(date),
activeEndDate:String(date),
type:String,
inheritedType:String,
parentId:0,
resellerId:0,
showAgentBill:0,
brandId:0,
currencyId:0,
currency:String,
archivedFrom:String(date),
allotmentSetting:String,
useResortAo:true,
adminOrganisationId:0)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

204

No distributionChannels found for given criteria.

500

Error occurred while fetching these distributionChannels

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/distributionchannels
Example HTTP response
Response 200
{
  "content" : [ {
    "activeEndDate" : "string",
    "activeStartDate" : "string",
    "allotmentOnly" : true,
    "allotmentSetting" : "string",
    "archivedFrom" : "string",
    "brand" : "string",
    "brandId" : 0,
    "code" : "string",
    "communicationPermission" : "string",
    "currencyCode" : "string",
    "currencyId" : 0,
    "distributionChannelId" : 0,
    "invoiceAddress" : {
      "address1" : "string",
      "address2" : "string",
      "address3" : "string",
      "alternateContactPerson" : "string",
      "boxNumber" : "string",
      "city" : "string",
      "country" : {
        "code" : "string",
        "countryId" : 0,
        "default" : true,
        "translations" : [ {
          "language" : "string",
          "name" : "string"
        } ]
      },
      "district" : "string",
      "email" : "string",
      "exposeLocation" : true,
      "fax" : "string",
      "houseNumber" : "string",
      "houseNumberSuffix" : "string",
      "latitude" : 0.0,
      "longitude" : 0.0,
      "mobilePhone" : "string",
      "mobilePhone2" : "string",
      "municipality" : "string",
      "poBox" : "string",
      "poBoxCity" : "string",
      "poBoxZipcode" : "string",
      "privatePhone" : "string",
      "workPhone" : "string",
      "zipCode" : "string"
    },
    "mailAddress" : {
      "address1" : "string",
      "address2" : "string",
      "address3" : "string",
      "alternateContactPerson" : "string",
      "boxNumber" : "string",
      "city" : "string",
      "country" : {
        "code" : "string",
        "countryId" : 0,
        "default" : true,
        "translations" : [ {
          "language" : "string",
          "name" : "string"
        } ]
      },
      "district" : "string",
      "email" : "string",
      "exposeLocation" : true,
      "fax" : "string",
      "houseNumber" : "string",
      "houseNumberSuffix" : "string",
      "latitude" : 0.0,
      "longitude" : 0.0,
      "mobilePhone" : "string",
      "mobilePhone2" : "string",
      "municipality" : "string",
      "poBox" : "string",
      "poBoxCity" : "string",
      "poBoxZipcode" : "string",
      "privatePhone" : "string",
      "workPhone" : "string",
      "zipCode" : "string"
    },
    "name" : "string",
    "parentId" : 0,
    "representationSetParentId" : 0,
    "resellerId" : 0,
    "showAgentBill" : 0,
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}
Response 204
{
  "content" : [ {
    "activeEndDate" : "string",
    "activeStartDate" : "string",
    "allotmentOnly" : true,
    "allotmentSetting" : "string",
    "archivedFrom" : "string",
    "brand" : "string",
    "brandId" : 0,
    "code" : "string",
    "communicationPermission" : "string",
    "currencyCode" : "string",
    "currencyId" : 0,
    "distributionChannelId" : 0,
    "invoiceAddress" : {
      "address1" : "string",
      "address2" : "string",
      "address3" : "string",
      "alternateContactPerson" : "string",
      "boxNumber" : "string",
      "city" : "string",
      "country" : {
        "code" : "string",
        "countryId" : 0,
        "default" : true,
        "translations" : [ {
          "language" : "string",
          "name" : "string"
        } ]
      },
      "district" : "string",
      "email" : "string",
      "exposeLocation" : true,
      "fax" : "string",
      "houseNumber" : "string",
      "houseNumberSuffix" : "string",
      "latitude" : 0.0,
      "longitude" : 0.0,
      "mobilePhone" : "string",
      "mobilePhone2" : "string",
      "municipality" : "string",
      "poBox" : "string",
      "poBoxCity" : "string",
      "poBoxZipcode" : "string",
      "privatePhone" : "string",
      "workPhone" : "string",
      "zipCode" : "string"
    },
    "mailAddress" : {
      "address1" : "string",
      "address2" : "string",
      "address3" : "string",
      "alternateContactPerson" : "string",
      "boxNumber" : "string",
      "city" : "string",
      "country" : {
        "code" : "string",
        "countryId" : 0,
        "default" : true,
        "translations" : [ {
          "language" : "string",
          "name" : "string"
        } ]
      },
      "district" : "string",
      "email" : "string",
      "exposeLocation" : true,
      "fax" : "string",
      "houseNumber" : "string",
      "houseNumberSuffix" : "string",
      "latitude" : 0.0,
      "longitude" : 0.0,
      "mobilePhone" : "string",
      "mobilePhone2" : "string",
      "municipality" : "string",
      "poBox" : "string",
      "poBoxCity" : "string",
      "poBoxZipcode" : "string",
      "privatePhone" : "string",
      "workPhone" : "string",
      "zipCode" : "string"
    },
    "name" : "string",
    "parentId" : 0,
    "representationSetParentId" : 0,
    "resellerId" : 0,
    "showAgentBill" : 0,
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.14.2. Gets page of payment methods of all distributionChannels

GET /maxxton/v1/distributionchannels/paymentmethods
Description

Get payment methods for all distributionchannels.
Maximum page size for this endpoint is 10.

Parameters
Type Name Description Schema

Query

distributionChannelCode
optional

distributionChannelCode to filter records.

string

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching payment methods

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/distributionchannels/paymentmethods
Example HTTP response
Response 200
{
  "content" : [ {
    "distributionChannelCode" : "string",
    "paymentMethods" : [ {
      "code" : "string",
      "maxDaysBetweenBookAndArrivalDate" : 0,
      "minDaysBeforeArrival" : 0,
      "paymentMethod" : "string",
      "paymentProvider" : "string",
      "paymentType" : "string",
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.14.3. Gets a single distributionChannel

GET /maxxton/v1/distributionchannels/{distributionChannelId}
Description

This endpoint returns the specific distribution channel including mail, invoice address and currency.

Parameters
Type Name Description Schema

Path

distributionChannelId
required

distributionChannelId

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

No distributionChannel found for given distributionChannel id.

No Content

500

Error occurred while fetching this distributionChannel

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/distributionchannels/0
Example HTTP response
Response 200
{
  "activeEndDate" : "string",
  "activeStartDate" : "string",
  "allotmentOnly" : true,
  "allotmentSetting" : "string",
  "archivedFrom" : "string",
  "brand" : "string",
  "brandId" : 0,
  "code" : "string",
  "communicationPermission" : "string",
  "currencyCode" : "string",
  "currencyId" : 0,
  "distributionChannelId" : 0,
  "invoiceAddress" : {
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "mailAddress" : {
    "address1" : "string",
    "address2" : "string",
    "address3" : "string",
    "alternateContactPerson" : "string",
    "boxNumber" : "string",
    "city" : "string",
    "country" : {
      "code" : "string",
      "countryId" : 0,
      "default" : true,
      "translations" : [ {
        "language" : "string",
        "name" : "string"
      } ]
    },
    "district" : "string",
    "email" : "string",
    "exposeLocation" : true,
    "fax" : "string",
    "houseNumber" : "string",
    "houseNumberSuffix" : "string",
    "latitude" : 0.0,
    "longitude" : 0.0,
    "mobilePhone" : "string",
    "mobilePhone2" : "string",
    "municipality" : "string",
    "poBox" : "string",
    "poBoxCity" : "string",
    "poBoxZipcode" : "string",
    "privatePhone" : "string",
    "workPhone" : "string",
    "zipCode" : "string"
  },
  "name" : "string",
  "parentId" : 0,
  "representationSetParentId" : 0,
  "resellerId" : 0,
  "showAgentBill" : 0,
  "type" : "string"
}

5.14.4. Gets a page of resorts

GET /maxxton/v1/distributionchannels/{distributionChannelId}/resorts
Description

This endpoint returns the resorts applicable to specific distribution channel.

Parameters
Type Name Description Schema

Path

distributionChannelId
required

distributionChannelId

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

404

No distributionChannel found for given distributionChannel id.

No Content

500

Error occurred while fetching the resorts

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/distributionchannels/0/resorts
Example HTTP response
Response 200
{
  "archivedFrom" : "string",
  "code" : "string",
  "parentId" : 0,
  "resortId" : 0,
  "translations" : [ {
    "description" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ]
}

5.14.5. Gets page of distributionchannel’s payent methods

GET /maxxton/v1/distributionchannels/{distributionchannelId}/paymentmethods
Description

Get payment methods for distributionchannel based on distributionchannelId.

Parameters
Type Name Description Schema

Path

distributionchannelId
required

distributionchannelId

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching payment methods for the given distributionchannel

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/distributionchannels/0/paymentmethods
Example HTTP response
Response 200
{
  "code" : "string",
  "maxDaysBetweenBookAndArrivalDate" : 0,
  "minDaysBeforeArrival" : 0,
  "paymentMethod" : "string",
  "paymentProvider" : "string",
  "paymentType" : "string",
  "translations" : [ {
    "language" : "string",
    "name" : "string"
  } ]
}

5.15. Download Files

Document Controller

5.15.1. Get the downloaded file

GET /maxxton/v1/files/downloads/{hash}
Description

The file associated with the hash can be downloaded

Parameters
Type Name Description Schema

Path

hash
required

hash

string

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while downloading file.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/files/downloads/string

5.16. Events

Events occurred in the system due to modifications of the entities

5.16.1. Gets page of events

GET /maxxton/v1/events
Description

Gets a page of events. Any change done to any of the data will trigger notifications. The notification is checked for the type of event and logged as an event along with entity id, event id and timestamps. The response of the above event endpoint can be filtered on the basis of criteria for e.g eventId , entityId , entityType etc., in combination with below mentioned parameters. For instance, /maxxton/v1/events?filter=type:UNIT_EVENT&modifiedAfter=2019-03-01T01:00:00.000

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
eventId:0,
entityId:0,
entityType:String,
entityAction:String,
eventTimestamp:String(date),
type:String,
oldEntityId:0)

Query

modifiedAfter
optional

modifiedAfter parameter will set a limit on the delta events so it will return all changes which occured on the environment after the provided date. If this parameter is not passed then the request will consider no start date limit and return everything available. However the delta events are only kept for 7 days. The parameter should be provided in UTC timezone with the following dateformat: yyyy-MM-dd’T’HH:mm:ss.SSS (for example: modifiedAfter:2018-10-18T10:00:00.000)

string (date: yyyy-MM-ddTHH:mm:ss)

Query

modifiedBefore
optional

modifiedBefore parameter will set a limit on the delta events so it will return all changes which occured on the environment before the provided date. If this parameter is not passed then the request will consider no end date limit and return everything available. However the delta events are only kept for 7 days. The parameter should be provided in UTC timezone with the following dateformat: yyyy-MM-dd’T’HH:mm:ss.SSS (for example: modifiedBefore:2018-10-18T10:00:00.000)

string (date: yyyy-MM-ddTHH:mm:ss)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching events.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/events
Example HTTP response
Response 200
{
  "content" : [ {
    "entityAction" : "string",
    "entityId" : 0,
    "entityType" : "string",
    "eventId" : 0,
    "eventTimestamp" : "2018-10-18T10:00:00.000",
    "oldEntityId" : 0,
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.17. Facilities

Different labels used for facilities

5.17.1. Get facilities

GET /maxxton/v1/facilities
Description

Gets a page with facilities. The records can be filtered based on the facility object. It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
facilityId:0,
code:String,
internalUse:true,
resortId:0,
priority:0,
openingTimes:String)

Query

openingTimeFrom
optional

The opening times of the facilities can be limited by requesting a start date. This will work only when returnOpeningTimes=true, and must be passed along with openingDateTo. The difference between openingTimeFrom and openingDateTo should not be greater than 31 days.

string (date: yyyy-MM-dd)

Query

openingTimeTo
optional

The opening times of the facilities can be limited by requesting an end date. This will work only when returnOpeningTimes=true, and must be passed along with openingTimeFrom. The difference between openingTimeFrom and openingDateTo should not be greater than 31 days.

string (date: yyyy-MM-dd)

Query

returnOpeningTimes
optional

Returns Facility opening times. By default, this request param is false, and should be used in the request opening times are expected. If this parameter is requested, only 10 facilities per page will be returned.

boolean

Query

returnUnpublished
optional

This will return unpublished Facility opening times.

boolean

Query

size
optional

size

integer (int32)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching facilities.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/facilities
Example HTTP response
Response 200
{
  "content" : [ {
    "code" : "string",
    "facilityId" : 0,
    "internalUse" : true,
    "openingTimes" : [ {
      "date" : "string",
      "endTime" : "string",
      "openingComment" : "string",
      "openingTimeId" : 0,
      "published" : true,
      "startTime" : "string"
    } ],
    "priority" : 0,
    "resortId" : 0,
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.17.2. Gets an facility of a specific facility id.

GET /maxxton/v1/facilities/{facilityId}
Description

Gets facility based on Facility Id

Parameters
Type Name Description Schema

Path

facilityId
required

Facility id to fetch facility

integer (int64)

Query

openingTimeFrom
optional

The opening times of the facilities can be limited by requesting a start date. This will work only when returnOpeningTimes=true, and must be passed along with openingDateTo. The maximum time between openingTimeFrom and openingDateTo is one month.

string (date: yyyy-MM-dd)

Query

openingTimeTo
optional

The opening times of the facilities can be limited by requesting an end date. This will work only when returnOpeningTimes=true, and must be passed along with openingTimeFrom. The maximum time between openingTimeFrom and openingDateTo is one month.

string (date: yyyy-MM-dd)

Query

returnOpeningTimes
optional

Returns Facility opening times. By default, this request param is false, and should be used in the request opening times are expected.

boolean

Query

returnUnpublished
optional

This will return unpublished Facility opening times.

boolean

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching Facility.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/facilities/0
Example HTTP response
Response 200
{
  "code" : "string",
  "facilityId" : 0,
  "internalUse" : true,
  "openingTimes" : [ {
    "date" : "string",
    "endTime" : "string",
    "openingComment" : "string",
    "openingTimeId" : 0,
    "published" : true,
    "startTime" : "string"
  } ],
  "priority" : 0,
  "resortId" : 0,
  "translations" : [ {
    "description" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ]
}

5.18. Groups

Grouping different kind of entities

5.18.1. Get a page with Groups

GET /maxxton/v1/groups
Description

Get a page with Groups. It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
groupId:0,
code:String,
type:String,
parentId:0,
priority:0,
resortId:0)

Query

type
optional

Specify the Group type criteria. To get the "linkedIds" it’s mandatory to provide the type parameter in the request.

string

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

204

No Groups found for given criteria.

500

Error occurred while fetching these Groups

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/groups
Example HTTP response
Response 200
{
  "content" : [ {
    "code" : "string",
    "groupId" : 0,
    "linkedIds" : [ 0 ],
    "parentId" : 0,
    "priority" : 0,
    "resortId" : 0,
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}
Response 204
{
  "content" : [ {
    "code" : "string",
    "groupId" : 0,
    "linkedIds" : [ 0 ],
    "parentId" : 0,
    "priority" : 0,
    "resortId" : 0,
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.18.2. Gets an Group for a specific groupId

GET /maxxton/v1/groups/{groupId}
Description

Gets an Groups based on specific groupId.

Parameters
Type Name Description Schema

Path

groupId
required

group id to fetch group

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching the Group

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/groups/0
Example HTTP response
Response 200
{
  "code" : "string",
  "groupId" : 0,
  "linkedIds" : [ 0 ],
  "parentId" : 0,
  "priority" : 0,
  "resortId" : 0,
  "translations" : [ {
    "description" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "string"
}

5.19. Housekeeping

Information related to housekeeping

5.19.1. Gets a Page of housekeeping details

GET /maxxton/v1/housekeeping
Description

Gets a Page of housekeeping details.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
resortId:0,
resourceId:0,
unitId:0,
executionDate:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching housekeeping details.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/housekeeping
Example HTTP response
Response 200
{
  "content" : [ {
    "executionDate" : "string",
    "executionMoment" : "string",
    "resortId" : 0,
    "resourceId" : 0,
    "sector" : {
      "name" : "string",
      "sectorId" : 0
    },
    "tasks" : [ {
      "assignee" : "string",
      "duration" : 0,
      "planningId" : 0,
      "remark" : "string",
      "status" : "string",
      "taskId" : 0
    } ],
    "unitId" : 0
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.19.2. Gets a Page of housekeeping tasks

GET /maxxton/v1/housekeeping/tasks
Description

Gets a Page of housekeeping tasks.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
taskId:0,
code:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching housekeeping tasks.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/housekeeping/tasks
Example HTTP response
Response 200
{
  "content" : [ {
    "code" : "string",
    "taskId" : 0,
    "translations" : [ {
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.20. Icals

Ical Controller

5.20.1. downloadFile

GET /maxxton/v1/units/icals/{hash}
Parameters
Type Name Description Schema

Path

hash
required

hash

string

Responses
HTTP Code Description Schema

200

OK

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/units/icals/string
Example HTTP response
Response 200
{
  "description" : "string",
  "file" : {
    "absolute" : true,
    "absoluteFile" : {
      "absolute" : true,
      "absoluteFile" : "...",
      "absolutePath" : "string",
      "canonicalFile" : "...",
      "canonicalPath" : "string",
      "directory" : true,
      "file" : true,
      "freeSpace" : 0,
      "hidden" : true,
      "name" : "string",
      "parent" : "string",
      "parentFile" : "...",
      "path" : "string",
      "totalSpace" : 0,
      "usableSpace" : 0
    },
    "absolutePath" : "string",
    "canonicalFile" : "...",
    "canonicalPath" : "string",
    "directory" : true,
    "file" : true,
    "freeSpace" : 0,
    "hidden" : true,
    "name" : "string",
    "parent" : "string",
    "parentFile" : "...",
    "path" : "string",
    "totalSpace" : 0,
    "usableSpace" : 0
  },
  "filename" : "string",
  "inputStream" : { },
  "open" : true,
  "readable" : true,
  "uri" : {
    "absolute" : true,
    "authority" : "string",
    "fragment" : "string",
    "host" : "string",
    "opaque" : true,
    "path" : "string",
    "port" : 0,
    "query" : "string",
    "rawAuthority" : "string",
    "rawFragment" : "string",
    "rawPath" : "string",
    "rawQuery" : "string",
    "rawSchemeSpecificPart" : "string",
    "rawUserInfo" : "string",
    "scheme" : "string",
    "schemeSpecificPart" : "string",
    "userInfo" : "string"
  },
  "url" : {
    "authority" : "string",
    "content" : "object",
    "defaultPort" : 0,
    "file" : "string",
    "host" : "string",
    "path" : "string",
    "port" : 0,
    "protocol" : "string",
    "query" : "string",
    "ref" : "string",
    "userInfo" : "string"
  }
}

5.20.2. Gets a ical link for single unit.

GET /maxxton/v1/units/{unitId}/icals/links
Description

Gets a link to download the specific unit ical file.

Parameters
Type Name Description Schema

Path

unitId
required

Unit id of the unit

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching the ical link.

No Content

Produces
  • */*

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/units/0/icals/links
Example HTTP response
Response 200
{
  "downloadLink" : "string"
}

5.21. Infotexts

Information related to all the infotexts.

5.21.1. Gets a page with infotexts.

POST /maxxton/v1/infotexts/search
Description

Gets a page with infotexts.

Parameters
Type Name Description Schema

Body

searchInfoTextRequest
required

searchInfoTextRequest

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while searching infotexts

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/infotexts/search
Request body
{
  "addonIds" : [ 0 ],
  "amenityIds" : [ 0 ],
  "arrivalDate" : "string",
  "departureDate" : "string",
  "distributionChannelId" : 0,
  "offerIds" : [ 0 ],
  "reservationCategoryId" : 0,
  "resortId" : 0,
  "resourceId" : 0,
  "showMomentId" : 0,
  "subjectIds" : [ 0 ],
  "unitIds" : [ 0 ]
}
Example HTTP response
Response 200
{
  "content" : [ {
    "content" : "string",
    "infoTextId" : 0,
    "name" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.21.2. Gets a page with show moments.

GET /maxxton/v1/infotexts/showmoments
Description

Gets a page with show moments. It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
momentId:0,
name:String,
description:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching showMoments

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/infotexts/showmoments
Example HTTP response
Response 200
{
  "content" : [ {
    "description" : "string",
    "momentId" : 0,
    "name" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.22. Languages

Available languages in the system

5.22.1. Gets languages

GET /maxxton/v1/languages
Description

Gets List of languages. The records can be filtered based on the language object.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
languageId:String,
shortName:String,
defaultLanguage:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

< Language > array

500

Error occurred while fetching languages.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/languages
Example HTTP response
Response 200
[ {
  "defaultLanguage" : true,
  "languageId" : "string",
  "shortName" : "string"
} ]

5.23. Ledgers

Ledger Controller

5.23.1. Gets a page with ledgers

GET /maxxton/v1/ledgers
Description

Gets page with ledgers.The records can be filtered based on ledger object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
ledgerId:0,
description:String,
ledgerNumber:String,
name:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching ledgers.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/ledgers
Example HTTP response
Response 200
{
  "content" : [ {
    "description" : "string",
    "ledgerId" : 0,
    "ledgerNumber" : "string",
    "name" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.23.2. Gets a page with ledger groups

GET /maxxton/v1/ledgers/groups
Description

Gets page with ledgers. The records can be filtered based on ledger object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
ledgerGroupId:0,
code:String,
translations:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching ledger groups.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/ledgers/groups
Example HTTP response
Response 200
{
  "content" : [ {
    "code" : "string",
    "ledgerGroupId" : 0,
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.23.3. Gets LedgerGroup for specific ledgerGroupId

GET /maxxton/v1/ledgers/groups/{ledgerGroupId}
Description

Gets LedgerGroup by LedgerGroup id

Parameters
Type Name Description Schema

Path

ledgerGroupId
required

ledgerGroupId

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching ledger for the given ledger group id.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/ledgers/groups/0
Example HTTP response
Response 200
{
  "code" : "string",
  "ledgerGroupId" : 0,
  "translations" : [ {
    "description" : "string",
    "language" : "string",
    "name" : "string"
  } ]
}

5.23.4. Gets Ledger for specific ledger id

GET /maxxton/v1/ledgers/{ledgerId}
Description

Gets ledger by ledger id.

Parameters
Type Name Description Schema

Path

ledgerId
required

ledgerId

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching ledger for the given ledger id.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/ledgers/0
Example HTTP response
Response 200
{
  "description" : "string",
  "ledgerId" : 0,
  "ledgerNumber" : "string",
  "name" : "string"
}

5.24. Locks

Lock Controller

5.24.1. Gets configured lock reasons

GET /maxxton/v1/locks/reasons
Description

Gets a page with all configured lock reasons. The records can be filtered based on the resourceLockReason object.It also supports pageable

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching lock reasons.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/locks/reasons
Example HTTP response
Response 200
{
  "content" : [ {
    "reasonId" : 0,
    "translations" : [ {
      "description" : "string",
      "langauge" : "string",
      "languageId" : 0,
      "name" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.25. Memos

Informative text on different entities

5.25.1. Gets a page with memo categories

GET /maxxton/v1/memos/categories
Description

Gets a page with memo categories. The records can be filtered based on memo category object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
memoCategoryId:0,
code:String)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching memo categories

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/memos/categories
Example HTTP response
Response 200
{
  "content" : [ {
    "code" : "string",
    "memoCategoryId" : 0,
    "translations" : [ {
      "description" : "string",
      "language" : "string",
      "name" : "string"
    } ]
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.26. Offer

Discounts or special offers on accommodations

5.26.1. Create a new offer

POST /maxxton/v1/offers
Description

The endpoint can be used to reserve/book offer i.e special or product

Parameters
Type Name Description Schema

Body

offer
required

A offer to be added

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while creating offer

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/offers
Request body
{
  "allowMovingToMainBill" : true,
  "allowPriceOverride" : true,
  "allowToPublish" : true,
  "archivedFrom" : "string",
  "autovalidate" : true,
  "code" : "string",
  "customizableResource" : true,
  "excludePriceCache" : true,
  "lowestLevel" : true,
  "offerExactPeriodOnly" : true,
  "offerPolicy" : "string",
  "offerPriority" : 0,
  "offerType" : "string",
  "parentId" : 0,
  "path" : "string",
  "poolWeightage" : 0,
  "powerplaygroupId" : 0,
  "resortId" : 0,
  "resourceId" : 0,
  "searchCode" : "string",
  "secretOffer" : true,
  "showNilPriceOnBill" : true,
  "source" : "string",
  "translations" : [ {
    "accotypeKind" : "string",
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "namePath" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "SPECIAL"
}
Example HTTP response
Response 200
{
  "allowMovingToMainBill" : true,
  "allowPriceOverride" : true,
  "allowToPublish" : true,
  "archivedFrom" : "string",
  "autovalidate" : true,
  "code" : "string",
  "customizableResource" : true,
  "excludePriceCache" : true,
  "lowestLevel" : true,
  "offerExactPeriodOnly" : true,
  "offerPolicy" : "string",
  "offerPriority" : 0,
  "offerType" : "string",
  "parentId" : 0,
  "path" : "string",
  "poolWeightage" : 0,
  "powerplaygroupId" : 0,
  "resortId" : 0,
  "resourceId" : 0,
  "searchCode" : "string",
  "secretOffer" : true,
  "showNilPriceOnBill" : true,
  "source" : "string",
  "translations" : [ {
    "accotypeKind" : "string",
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "namePath" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "SPECIAL"
}

5.26.2. Get a page with offers available.

GET /maxxton/v1/offers
Description

Gets a page with offers associated with resource id. The records can be filtered bassed on offer object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
code:String,
resortId:0,
parentId:0,
path:String,
lowestLevel:true,
allowPriceOverride:true,
source:String,
showNilPriceOnBill:true,
powerplaygroupId:0,
allowMovingToMainBill:true,
archivedFrom:String(date),
offerType:String,
offerPolicy:String,
offerPriority:0,
autovalidateValue:0,
type:String,
poolWeightage:0,
customizableResource:true)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching Specials

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/offers
Example HTTP response
Response 200
{
  "content" : [ {
    "allowMovingToMainBill" : true,
    "allowPriceOverride" : true,
    "allowToPublish" : true,
    "archivedFrom" : "string",
    "autovalidate" : true,
    "code" : "string",
    "customizableResource" : true,
    "excludePriceCache" : true,
    "lowestLevel" : true,
    "offerExactPeriodOnly" : true,
    "offerPolicy" : "string",
    "offerPriority" : 0,
    "offerType" : "string",
    "parentId" : 0,
    "path" : "string",
    "poolWeightage" : 0,
    "powerplaygroupId" : 0,
    "resortId" : 0,
    "resourceId" : 0,
    "searchCode" : "string",
    "secretOffer" : true,
    "showNilPriceOnBill" : true,
    "source" : "string",
    "translations" : [ {
      "accotypeKind" : "string",
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "namePath" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "SPECIAL"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.26.3. Gets Offers additions

GET /maxxton/v1/offers/additions
Description

Gets a page with offers additions. The records can be filtered based on resource addition object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
additionId:0,
additionFast:true,
mandatoryResource:true,
maxQuantity:0,
maxReservable:0,
maxTotalQuantity:0,
unitId:0,
priceCompare:true,
resourceId:0,
validFrom:String(date),
validTo:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching offers additions.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/offers/additions
Example HTTP response
Response 200
{
  "content" : [ {
    "additionFast" : true,
    "additionI18n" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "additionId" : 0,
    "addonType" : "string",
    "code" : "string",
    "mandatoryResource" : true,
    "maxQuantity" : 0,
    "maxReservable" : 0,
    "maxTotalQuantity" : 0,
    "priceCompare" : true,
    "resortArticle" : true,
    "resourceId" : 0,
    "resourceMoment" : [ "string" ],
    "supplierAdditionId" : 0,
    "translations" : [ {
      "description" : "string",
      "description2" : "string",
      "language" : "string",
      "name" : "string",
      "shortDescription" : "string"
    } ],
    "type" : "string",
    "unitId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.26.4. Get implies of offer

GET /maxxton/v1/offers/implies
Description

Gets a page with implies of offer. The records can be filtered based on implies object.It also supports pageable.

Parameters
Type Name Description Schema

Query

filter
optional

Following fields can be used for filtering response.
For more information, check: Filtering

enum (
impliesId:0,
addToParent:0,
bookDateFrom:String(date),
bookDateTo:String(date),
countFromMin:true,
ignoreRentability:true,
implicationManagerId:0,
implyOnce:true,
included:true,
onBill:true,
parentId:0,
priority:0,
quantityMax:0,
quantityMin:0,
removable:true,
required:true,
showOnAllInPriceBill:true,
showPrice:true,
subjectsMax:0,
subjectsMin:0,
supplierImpliesId:0,
validFrom:String(date),
validTo:String(date))

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching implies.

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/offers/implies
Example HTTP response
Response 200
{
  "content" : [ {
    "addToParent" : 0,
    "bookDateFrom" : "string",
    "bookDateTo" : "string",
    "countFromMin" : true,
    "ignoreRentability" : true,
    "implicationManagerId" : 0,
    "implied" : [ {
      "objectId" : 0,
      "resourceId" : 0
    } ],
    "impliesId" : 0,
    "implyOnce" : true,
    "included" : true,
    "onBill" : true,
    "parent" : true,
    "parentId" : 0,
    "priority" : 0,
    "quantityMax" : 0,
    "quantityMin" : 0,
    "removable" : true,
    "required" : true,
    "resourceIds" : [ 0 ],
    "showOnAllInPriceBill" : true,
    "showPrice" : true,
    "stay" : true,
    "subjectsMax" : 0,
    "subjectsMin" : 0,
    "supplierImpliesId" : 0,
    "validFrom" : "string",
    "validTo" : "string"
  } ],
  "empty" : true,
  "first" : true,
  "last" : true,
  "number" : 0,
  "numberOfElements" : 0,
  "size" : 0,
  "sort" : [ {
    "ascending" : true,
    "descending" : true,
    "direction" : "string",
    "ignoreCase" : true,
    "nullHandling" : "string",
    "property" : "string"
  } ],
  "totalElements" : 0,
  "totalPages" : 0
}

5.26.5. Update addition of offers

PUT /maxxton/v1/offers/{additionResourceId}/additions/{additionId}
Description

Update addition details of a resource by addition resource id and addition id.

Parameters
Type Name Description Schema

Path

additionId
required

Addition id which is going to be updated

integer (int64)

Path

additionResourceId
required

The resource on which the offer is applicable as an addition and needs to be modified.

integer (int64)

Body

resourceAddition
required

The resource on which the offer is applicable as an addition.

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching addtion.

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/offers/0/additions/0
Request body
{
  "additionFast" : true,
  "additionI18n" : [ {
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ],
  "additionId" : 0,
  "addonType" : "string",
  "code" : "string",
  "mandatoryResource" : true,
  "maxQuantity" : 0,
  "maxReservable" : 0,
  "maxTotalQuantity" : 0,
  "priceCompare" : true,
  "resortArticle" : true,
  "resourceId" : 0,
  "resourceMoment" : [ "string" ],
  "supplierAdditionId" : 0,
  "translations" : [ {
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "string",
  "unitId" : 0,
  "validFrom" : "string",
  "validTo" : "string"
}
Example HTTP response
Response 200
{
  "additionFast" : true,
  "additionI18n" : [ {
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ],
  "additionId" : 0,
  "addonType" : "string",
  "code" : "string",
  "mandatoryResource" : true,
  "maxQuantity" : 0,
  "maxReservable" : 0,
  "maxTotalQuantity" : 0,
  "priceCompare" : true,
  "resortArticle" : true,
  "resourceId" : 0,
  "resourceMoment" : [ "string" ],
  "supplierAdditionId" : 0,
  "translations" : [ {
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "string",
  "unitId" : 0,
  "validFrom" : "string",
  "validTo" : "string"
}

5.26.6. Get offer to a specific resource id

GET /maxxton/v1/offers/{resourceId}
Description

Get offer associated with a specific resouce id.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id to fetched offer

integer (int64)

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while fetching Offer

No Content

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/offers/0
Example HTTP response
Response 200
{
  "allowMovingToMainBill" : true,
  "allowPriceOverride" : true,
  "allowToPublish" : true,
  "archivedFrom" : "string",
  "autovalidate" : true,
  "code" : "string",
  "customizableResource" : true,
  "excludePriceCache" : true,
  "lowestLevel" : true,
  "offerExactPeriodOnly" : true,
  "offerPolicy" : "string",
  "offerPriority" : 0,
  "offerType" : "string",
  "parentId" : 0,
  "path" : "string",
  "poolWeightage" : 0,
  "powerplaygroupId" : 0,
  "resortId" : 0,
  "resourceId" : 0,
  "searchCode" : "string",
  "secretOffer" : true,
  "showNilPriceOnBill" : true,
  "source" : "string",
  "translations" : [ {
    "accotypeKind" : "string",
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "namePath" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "SPECIAL"
}

5.26.7. Update a offer

PUT /maxxton/v1/offers/{resourceId}
Description

The offer to a specific resource id can be updated.

Parameters
Type Name Description Schema

Path

resourceId
required

Resource id of offer which want to update

integer (int64)

Body

offer
required

A offer to be update

Responses
HTTP Code Description Schema

200

The request is completed successfully without any errors

500

Error occurred while creating offer

No Content

Consumes
  • application/json

Produces
  • application/json

Security
Type Name

oauth2

Example HTTP request
Request path
/maxxton/v1/offers/0
Request body
{
  "allowMovingToMainBill" : true,
  "allowPriceOverride" : true,
  "allowToPublish" : true,
  "archivedFrom" : "string",
  "autovalidate" : true,
  "code" : "string",
  "customizableResource" : true,
  "excludePriceCache" : true,
  "lowestLevel" : true,
  "offerExactPeriodOnly" : true,
  "offerPolicy" : "string",
  "offerPriority" : 0,
  "offerType" : "string",
  "parentId" : 0,
  "path" : "string",
  "poolWeightage" : 0,
  "powerplaygroupId" : 0,
  "resortId" : 0,
  "resourceId" : 0,
  "searchCode" : "string",
  "secretOffer" : true,
  "showNilPriceOnBill" : true,
  "source" : "string",
  "translations" : [ {
    "accotypeKind" : "string",
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "namePath" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "SPECIAL"
}
Example HTTP response
Response 200
{
  "allowMovingToMainBill" : true,
  "allowPriceOverride" : true,
  "allowToPublish" : true,
  "archivedFrom" : "string",
  "autovalidate" : true,
  "code" : "string",
  "customizableResource" : true,
  "excludePriceCache" : true,
  "lowestLevel" : true,
  "offerExactPeriodOnly" : true,
  "offerPolicy" : "string",
  "offerPriority" : 0,
  "offerType" : "string",
  "parentId" : 0,
  "path" : "string",
  "poolWeightage" : 0,
  "powerplaygroupId" : 0,
  "resortId" : 0,
  "resourceId" : 0,
  "searchCode" : "string",
  "secretOffer" : true,
  "showNilPriceOnBill" : true,
  "source" : "string",
  "translations" : [ {
    "accotypeKind" : "string",
    "description" : "string",
    "description2" : "string",
    "language" : "string",
    "name" : "string",
    "namePath" : "string",
    "shortDescription" : "string"
  } ],
  "type" : "SPECIAL"
}

5.26.8. Add addition of offers

POST /maxxton/v1/offers/{resourceId}/additions
Description

Add addition of offers by an addition resource id.

Parameters
Type Name Description Schema

Path

resourceId
required

Addition resource id of offer, which is an addition on a resource specified by resourceId in the request body.

integer (int64)

Body

resourceAddition
required

An addition(product/extra) that can be added on an offer.
Note: The translations are not allowed while adding an addtion on offer.

Responses
HTTP Code Description Schema

200

The request is completed