diff --git a/booking-engine-api/guidelines/authentication.md b/booking-engine-api/guidelines/authentication.md index 4656af6..aaf28b6 100644 --- a/booking-engine-api/guidelines/authentication.md +++ b/booking-engine-api/guidelines/authentication.md @@ -4,26 +4,41 @@ The __Mews Booking Engine API__ is a public API that requires client authenticat ## Client authentication -Authentication is the process of verifying the identity of the client. To access the API, you must identify your client application by providing the `Client` property in all requests. This ensures that your client application is recognized and allowed to interact with the API. +Authentication is the process of verifying the identity of the client. To access the API, you must include the `Client` property in every request. This value identifies your client application and must match a pre-registered name in Mews. + +> **Client name:** In our documentation, we refer to the pre-registered name as your `client name`. It corresponds to the `Client` property in the API payload. ### Registration -Your client application needs to be pre-registered with Mews Support. You can open a ticket from __Mews Operations__ via the [Mews Digital Assistant](https://help.mews.com/s/article/How-to-use-the-Mews-Digital-Assistant). The registration request should contain: +Before using your own `client name` in requests, it must be registered with Mews. You will also need to provide a contact email address for your development team. This email will be used to notify you of any important API updates or breaking changes. + +#### Recommended: Use the Mews Digital Assistant + +Register from within Mews Operations using the **Mews Digital Assistant** chatbot (available to logged-in users): +[How to use the Mews Digital Assistant](https://help.mews.com/s/article/How-to-use-the-Mews-Digital-Assistant) + +Provide the following details: + +* `Client name`: the application name you will use in the `Client` property for every API request +* `Contact email`: your development contact email +* `Environments`: `Demo` and/or `Production` -* `Client` - the name of the client application that will be used for every API request -* `Email` - an email contact for your development department; this email will be used by our developers to notify you about any breaking changes in the API -* `Environment` - the name of the environment you are accessing, either `Production` or `Demo`. +#### Alternatively: Register by email + +If you don’t have access to the Digital Assistant, email [support@mews.com](mailto:support@mews.com) with the same information. ### Environments -We offer two environments, `Production` and `Demo`. Use `Demo` during API implementation, and `Production` only for live customer sites. -The two environments have separate client lists, so make sure you are registered in `Production` before you move your implementation to the Production environment. -For details, see our [Environments](environments.md) page. +We offer two environments: + +- `Demo`: for testing and development +- `Production`: for live customer sites + +Each environment maintains a separate list of registered `client names`. Ensure your `client name` is registered in each environment you plan to use. See [Environments](environments.md) for details. ### Sample client name -Before the registration of your `Client` name is confirmed, you can use the sample client name below. This client name will **only work in the Demo environment**. -Keep in mind that this must be replaced by your proper `Client` name as soon as you finish the registration process. +While your `client name` is being registered, you can begin development using the following sample value: ```json { @@ -31,6 +46,8 @@ Keep in mind that this must be replaced by your proper `Client` name as soon as } ``` +>️ **Only for Demo**: This sample `client name` is only valid in the Demo environment and should be replaced once registration is complete. + ## Client authorization -Authorization is the process of determining what the authenticated client is allowed to do. In this case, it is sufficient to know the unique identifier of a hotel or other enterprise in order to access it. However, the client must be authenticated by providing the `Client` property in all requests to ensure it has the necessary permissions to interact with the API. +Authorization determines what an authenticated client is allowed to do. In this API, access is granted based on the `Client` property and a known enterprise identifier. As long as your `client name` is registered and included in the `Client` property, and you have the correct enterprise identifier, the API will authorize your request. diff --git a/changelog/README.md b/changelog/README.md index 9ed4ee5..8190caa 100644 --- a/changelog/README.md +++ b/changelog/README.md @@ -1,5 +1,8 @@ # Changelog +## 29th May 2025 +* API: Minor amendments to the [Authentication](../booking-engine-api/guidelines/authentication.md) page to align the partner journey. Documentation-only, no change to the API. + ## 10th February 2025 * API: Renamed and rewritten [Authentication](../booking-engine-api/guidelines/authentication.md) page, and other small changes. Documentation-only, no change to the API.