Skip to content

Commit

Permalink
Merge pull request #200 from MewsSystems/unified-structure
Browse files Browse the repository at this point in the history
Extensive refresh of site for standardized structure
  • Loading branch information
patrikmiksovsky95 authored Dec 16, 2024
2 parents 868789d + d4452bf commit deaaacf
Show file tree
Hide file tree
Showing 22 changed files with 297 additions and 213 deletions.
5 changes: 5 additions & 0 deletions .gitbook.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
root: ./

redirects:
mews-operations/operations: mews-operations/README.md
channel-manager-operations/operations: channel-manager-operations/README.md
23 changes: 11 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,18 @@
# Mews Channel Manager API

Welcome to the __Mews Channel Manager API__. This is the Mews API for distribution and sales channels, supporting two main use cases: distributing availability, rates and inventory data to sales channels; and accepting reservations from sales channels. Typically, the users of this API are Channel Managers, which act as hubs for managing the various sales channels that a property may be connected to. The API connects these Channel Managers with __Mews Operations__.
Welcome to the __Mews Channel Manager API__. This is the Mews API for distribution and sales channels, supporting two main use cases: distributing availability, rates and inventory data to sales channels, and accepting reservations from sales channels.
To fully implement the API, you need to both make requests to Mews and also create your own endpoints to accept data from Mews.

The integration functionality is two-way, so the API is implemented in two parts:
> ### Two-way functionality
> * The [Mews side](mews-operations/README.md) handles requests from Channel Managers, including new reservations.
> * The [Channel Manager side](channel-manager-operations/README.md) handles requests from Mews, including availability updates.
* The [Mews side](mews-operations/README.md) receives requests from external Channel Managers, including new reservations
* The [Channel Manager side](channel-manager-operations/README.md) receives requests from Mews, including availability updates
For detailed information on connecting, authentication tokens, error codes, and more, see our [Usage guidelines](guidelines/README.md).
To gain deeper insights into Mews concepts, see [Concepts](concepts/README.md). For specific scenarios, see [Use cases](use-cases/README.md).

To fully implement the functionality of the API, you will need to not only make requests to Mews through defined endpoints on the Mews side, but also create your own endpoints to accept data from Mews on the Channel Manager side.

For a full guide on how to connect, what authentication tokens you need, the meaning of error codes and much more, see our [Guidelines](guidelines/README.md). For a deeper understanding of **Mews** concepts, see [Concepts](concepts/README.md).

If you encounter any issues using the API, or you have any questions, please get in touch via [[email protected]](mailto:[email protected]).
If you have any questions or encounter issues, reach out to us at [[email protected]](mailto:[email protected]).

> ### Changes to this API
> * For the history of changes to the API, see the [Changelog](changelog/README.md)
> * For important information on deprecations, see [Deprecations](deprecations/README.md)
> * To track changes and updates, you can follow the [GitHub repository](https://github.com/MewsSystems/gitbook-channel-manager-api/tree/master)
> * For the history of changes, see the [Changelog](changelog/README.md).
> * For important information on deprecations, see [Deprecations](deprecations/README.md).
> * To track changes and updates, follow the [GitHub repository](https://github.com/MewsSystems/gitbook-channel-manager-api/tree/master).
30 changes: 17 additions & 13 deletions SUMMARY.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,27 @@
# Table of contents

* [Mews Channel Manager API](README.md)
* [Guidelines](guidelines/README.md)
* [Usage guidelines](guidelines/README.md)
* [Authentication](guidelines/authentication.md)
* [Requests](guidelines/requests.md)
* [Responses](guidelines/responses.md)
* [Environments](guidelines/environments.md)
* [Compliance](guidelines/compliance.md)
* [Concepts](concepts/README.md)
* [Restrictions](concepts/restrictions.md)
* [Mews side](mews-operations/README.md)
* [API Operations (Mews)](mews-operations/operations.md)
* [Configuration](mews-operations/configuration.md)
* [Availability blocks](mews-operations/availabilityBlock.md)
* [Inventory](mews-operations/inventory.md)
* [Reservations](mews-operations/reservations.md)
* [Channel Manager side](channel-manager-operations/README.md)
* [API Operations (CHM)](channel-manager-operations/operations.md)
* [Availability blocks](channel-manager-operations/availabilityBlock.md)
* [Inventory](channel-manager-operations/inventory.md)
* [Reservations](channel-manager-operations/reservations.md)
* [Notifications](channel-manager-operations/notifications.md)
* [Use cases](use-cases/README.md)
* [Channels](use-cases/channels.md)
* [Inventory updates](use-cases/inventory-updates.md)
* [API Operations (Mews)](mews-operations/README.md)
* [Configuration](mews-operations/configuration.md)
* [Availability blocks](mews-operations/availabilityBlock.md)
* [Inventory](mews-operations/inventory.md)
* [Reservations](mews-operations/reservations.md)
* [API Operations (CHM)](channel-manager-operations/README.md)
* [Availability blocks](channel-manager-operations/availabilityBlock.md)
* [Inventory](channel-manager-operations/inventory.md)
* [Reservations](channel-manager-operations/reservations.md)
* [Notifications](channel-manager-operations/notifications.md)
* [Your integration journey](your-journey/README.md)
* [Certification](your-journey/certification.md)
* [Certification tests](your-journey/certification-tests.md)
Expand Down
12 changes: 8 additions & 4 deletions changelog/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Changelog

## 13th December 2024

* Refresh of entire site. Documentation-only, no changes to API.

## 7th November 2024

* [Mews: Process group](../mews-operations/reservations.md#process-group) – added recommended limit of 100 reservations per group. Documentation-only.
Expand Down Expand Up @@ -28,7 +32,7 @@

## 2nd Oct 2024

* Updated [Guidelines](../guidelines/README.md#channels) to advise how to add new sales channels or sources through the API. Documentation-only.
* Updated [Usage guidelines](../guidelines/README.md#channels) to advise how to add new sales channels or sources through the API. Documentation-only.

## 11th September 2024

Expand Down Expand Up @@ -63,16 +67,16 @@

## 11th April 2024

* Added loyalty info to Request in [Channel manager API Operations: Process Availability block](../channel-manager-operations/availabilityBlock.md#availability-block).
* Added loyalty info to Request in [CHM: Process Availability block](../channel-manager-operations/availabilityBlock.md#availability-block).

## 26th March 2024

* Minor changes to highlight the need for re-certification when replacing deprecated features, see [Deprecations](../deprecations/README.md) (documentation only)

## 9th January 2024

* Added [Age Category Code](../mews-operations/reservations.md#age-category-code) in [Mews API Operations: Process Group](../mews-operations/reservations.md#process-group) (documentation only).
* Added explanations to [Mews API Operations: Process Group](../mews-operations/reservations.md#process-group) for the consequences of using negative extra product amounts (documentation only).
* Added [Age Category Code](../mews-operations/reservations.md#age-category-code) in [Mews: Process Group](../mews-operations/reservations.md#process-group) (documentation only).
* Added explanations to [Mews: Process Group](../mews-operations/reservations.md#process-group) for the consequences of using negative extra product amounts (documentation only).

| Changelog by year |
| :-- |
Expand Down
40 changes: 22 additions & 18 deletions channel-manager-operations/README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,29 @@
# Channel Manager side
# API Operations (CHM)

This section describes the Channel Manager side of the Channel Manager API, i.e. API Operations hosted by the Channel Manager.
The Channel Manager side receives requests from Mews, including inventory updates \(prices, availability and restrictions\) and booking confirmations.
This section describes the Channel Manager side of the __Mews Channel Manager API__, i.e. API Operations hosted by the Channel Manager. The Channel Manager side receives requests from Mews, including inventory updates \(prices, availability and restrictions\) and booking confirmations. The list of supported operations is as follows, organised here by theme.

> ### Inventory update modes
> Mews pushes inventory to the Channel Manager side in one of two modes, both using the same API Operations, either **Full Inventory Update Mode** or **Delta Inventory Update Mode**.
> For more information, see [Use cases > Inventory updates](../use-cases/inventory-updates.md).
## Environments
## Inventory

Similarly to the Mews side, there should be two environments with different `clientTokens`.
The test/development environment will be used to verify the connection by Mews before connecting to the live/production environment.
| <div style="width:200px">Operation</div> | Description |
| :-- | :-- |
| [Update prices](inventory.md#update-prices) | This method is used when Mews updates prices of rate plans |
| [Update availability](inventory.md#update-availability) | This method is used when Mews updates availability of space types |
| [Update restrictions](inventory.md#update-restrictions) | This method is used when Mews updates restrictions |
| [Process availability block](availabilityBlock.md) | This method is used when Mews sends availability blocks |

## Inventory Update Modes
## Reservations

Mews sends Inventory in two modes, both modes use the same API messages.
| <div style="width:200px">Operation</div> | Description |
| :-- | :-- |
| [Process group](reservations.md#process-group) | \[`async`\] Process a group of reservations, which can be new bookings, modifications or cancellations. |
| [Confirm booking](reservations.md#confirm-booking) | This method is used when Mews confirms a booking sent via [Process group](../mews-operations/reservations.md#process-group) |

### Full Inventory Update Mode
## Notifications

You can request an Inventory update for some specified time period via API operation [Request ARI update](../mews-operations/inventory.md#request-ari-update).
Alternatively, a property employee can use this mode to push the latest data manually.
Data sent in this mode is always for **all** connected rate plans and space types combinations.

### Delta Inventory Update Mode

Mews automatically sends changes in Inventory \(once connection is set up\). Data sent in this mode is just the changed data from the last update.
This is a completely automated process and there is no way to trigger just the delta update to be sent.
Delta inventory updates are sent repeatedly until they are successfully accepted by the channel manager.
| <div style="width:200px">Operation</div> | Description |
| :-- | :-- |
| [Change notification](notifications.md#change-notification) | This operation is used by Mews to notify the channel manager when there is a change in the connection configuration |
25 changes: 0 additions & 25 deletions channel-manager-operations/operations.md

This file was deleted.

2 changes: 1 addition & 1 deletion concepts/restrictions.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Restrictions in the Mews application have a number of parameters:
## Restrictions in the API

In the **Mews Channel Manager API**, the channel manager side must support an endpoint for Mews to push restrictions to the channel manager, this is [Update restrictions](../channel-manager-operations/inventory.md#update-restrictions). Note there is no operation to add or delete restrictions, everything is done through Update restrictions. Thus any existing restrictions with the same scope and time period are overridden by the updated restrictions.
In the **Mews Channel Manager API**, the channel manager side must support an endpoint for Mews to push restrictions to the channel manager, this is [CHM: Update restrictions](../channel-manager-operations/inventory.md#update-restrictions). Note there is no operation to add or delete restrictions, everything is done through Update restrictions. Thus any existing restrictions with the same scope and time period are overridden by the updated restrictions.

| <div style="width:350px">'How to' use case</div> | API Operations |
| :-- | :-- |
Expand Down
14 changes: 7 additions & 7 deletions deprecations/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,17 @@ The table columns have the following meanings:
| Feature | Comments | Deprecated | Discontinued |
| :-- | :-- | :-- | :-- |
| `loyaltyCode` in [Customer](../mews-operations/reservations.md#customer) object in [Mews: Process group](../mews-operations/reservations.md#process-group) | Replaced by `loyaltyInfo` | 4 Nov 2024 | - |
| `releasedDate` in [CHM: Dates](../channel-manager-operations/availabilityBlock.md#dates) object in [CHM: Availability block](../channel-manager-operations/availabilityBlock.md#availability-block) | Replaced by `fixedDate` in [`Release strategy`](../mews-operations/availabilityBlock.md#release-strategy) of [`Availability block`](../channel-manager-operations/availabilityBlock.md#availability-block) | 11 Oct 2024 | - |
| `releasedDate` in [Dates](../channel-manager-operations/availabilityBlock.md#dates) object in [CHM: Availability block](../channel-manager-operations/availabilityBlock.md#availability-block) | Replaced by `fixedDate` in [`Release strategy`](../mews-operations/availabilityBlock.md#release-strategy) of [`Availability block`](../channel-manager-operations/availabilityBlock.md#availability-block) | 11 Oct 2024 | - |
| `error` in [Synchronous error response](../guidelines/responses.md#synchronous-error-response) | Replaced by `errors` (plural and an `array`) | 15 May 2024 | - |
| `paymentType` in [`RatePlan`](../mews-operations/configuration.md#rate-plan) returned by [Mews: Get configuration](../mews-operations/configuration.md#get-configuration) | May yield incorrect value. More info below (\*1). | 16 May 2024 | - |
| `channel` in [Process group](../mews-operations/reservations.md#process-group) | Replaced by `sources` | 26 Sep 2022 | - |
| `iata` in [Company](../mews-operations/reservations.md#company) in [Process group](../mews-operations/reservations.md#process-group) | Replaced by `iata` in the [Travel Agency](../mews-operations/reservations.md#travel-agency) object | 26 Sep 2022 | - |
| `adultCount` and `childCount` in [`Reservation`](../mews-operations/reservations.md#reservation) object in [Process group](../mews-operations/reservations.md#process-group) | Replaced by `guestCounts`; **Requires re-certification** | 29 Apr 2022 | - |
| `code` in [`Payment card`](../mews-operations/reservations.md#payment-card) object in [Process group](../mews-operations/reservations.md#process-group) | Replaced by `type` | 08 Mar 2018 | End Apr 2018 |
| `channel` in [Mews: Process group](../mews-operations/reservations.md#process-group) | Replaced by `sources` | 26 Sep 2022 | - |
| `iata` in [Company](../mews-operations/reservations.md#company) in [Mews: Process group](../mews-operations/reservations.md#process-group) | Replaced by `iata` in the [Travel Agency](../mews-operations/reservations.md#travel-agency) object | 26 Sep 2022 | - |
| `adultCount` and `childCount` in [`Reservation`](../mews-operations/reservations.md#reservation) object in [Mews: Process group](../mews-operations/reservations.md#process-group) | Replaced by `guestCounts`; **Requires re-certification** | 29 Apr 2022 | - |
| `code` in [`Payment card`](../mews-operations/reservations.md#payment-card) object in [Mews: Process group](../mews-operations/reservations.md#process-group) | Replaced by `type` | 08 Mar 2018 | End Apr 2018 |
| `accessToken` in all API calls on both Mews side and CHM side | Replaced by `clientToken` | 10 Jan 2018 | End Mar 2018 |
| `connectionCode` in all API calls on both Mews side and CHM side | Replaced by `connectionToken` | 10 Jan 2018 | End Mar 2018 |
| `code` in [`Connection Info`](../mews-operations/configuration.md#connection-info) object in [Get properties](../mews-operations/configuration.md#get-properties) | Replaced by `token` | 10 Jan 2018 | End Mar 2018 |
| `distributor` in [`Reservation`](../mews-operations/reservations.md#reservation) object in [Process group](../mews-operations/reservations.md#process-group) | Replaced by `channel` | 10 Jan 2018 | End Mar 2018 |
| `code` in [`Connection Info`](../mews-operations/configuration.md#connection-info) object in [Mews: Get properties](../mews-operations/configuration.md#get-properties) | Replaced by `token` | 10 Jan 2018 | End Mar 2018 |
| `distributor` in [`Reservation`](../mews-operations/reservations.md#reservation) object in [Mews: Process group](../mews-operations/reservations.md#process-group) | Replaced by `channel` | 10 Jan 2018 | End Mar 2018 |

> **(\*1) paymentType**: We are introducing enhancements that elevate settlement rules to the enterprise level, allowing them to be assigned either to a rate group or directly to a rate. Due to the complex nature of settlement rules, which can vary within a rate group, `paymentType` is now obsolete as the value may vary depending on reservation dates, which can't be reflected in this field.
Expand Down
Loading

0 comments on commit deaaacf

Please sign in to comment.