# Booking Channels A Booking Channel refers to an external booking platform where customers can make reservations or book services online. Managing these channels effectively ensures that your venues are exposed on the right platforms, giving customers the ability to book through the systems they trust. ## Object Definition | Key | Type | Mandatory | Description | | --- | --- | --- | --- | | id | String | Yes | Booking Channel id | | name | String | Yes | Booking Channel name | | logo | String | No | Booking Channel logo | ## Get Booking Channels This endpoint allows you to retrieve a list of available Booking Channels. You can use this data to view which channels are available for integration and decide where to publish your venues. ### Endpoint `GET https://api-sandbox.mozrest.com/v1/rms/booking-channels` #### Query Parameters | Parameter | Status | Description | | --- | --- | --- | | filters[criteria] | **Optional** | Filter by Booking Channel name in `Like %criteria% format` | #### Example Request: ```shell curl GET "https://api-sandbox.mozrest.com/v1/rms/booking-channels" \ -H "Authorization: Bearer {{api_key}}" \ -d "offset=0" \ -d "limit=10" \ -d "filters[criteria]=name" ``` #### Example Response: ```json { "total": 2, "data": [ { "id": "60e5a3edfc8747ddfe1c10da", "name": "The MICHELIN Guide", "logo": "https://mozrest-statics.s3.eu-west-1.amazonaws.com/rp/michelin-guide.png", }, { "id": "60e5a3edfc8747ddfe1c10da", "name": "Tripadvisor", "logo": "https://mozrest-statics.s3.eu-west-1.amazonaws.com/rp/tripadvisor.svg", } ] } ``` ## Enable Venues on a Booking Channel To make a venue bookable through a specific Booking Channel, you need to link the venue to that channel using this endpoint. This enables your venue to accept bookings from customers using that particular channel. ### Endpoint `PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-venues` #### Query Parameters | Parameter | Status | Description | | --- | --- | --- | | bookingChannelId | **Mandatory** | The Booking Channel ID to link the venues to | #### Body Parameters | Parameter | Status | Description | | --- | --- | --- | | venues | **Mandatory** | Array of venue IDs to be linked to the specified Booking Channel | #### Example Request: ```shell curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/link-venues" \ -H "Authorization: Bearer {{api_key}}" \ --data-raw '{ "venues": [ "60e5a3edfc8747ddfe1c10da", "60e5a3ed45f889c669110306", "60e5a3ed2db1dd4b81db45d4" ] }' ``` #### Example Response: ```json { "venues": [ "60e5a3edfc8747ddfe1c10da", "60e5a3ed45f889c669110306", "60e5a3ed2db1dd4b81db45d4" ] } ``` ## Disable Venues from a Booking Channel This endpoint allows you to disable specific venues from being bookable through a Booking Channel. Use this when you want to remove venues from the booking options available to customers on a particular channel. ### Endpoint `PUT https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-venues` #### URL Parameters | Parameter | Status | Description | | --- | --- | --- | | bookingChannelId | **Mandatory** | The Booking Channel ID to unlink the venues from | #### Body Parameters | Parameter | Status | Description | | --- | --- | --- | | venues | **Mandatory** | Array of venue IDs to be unlinked from the specified Booking Channel | #### Example Request: ```shell curl PUT "https://api-sandbox.mozrest.com/v1/rms/booking-channels/{bookingChannelId}/unlink-venues" \ -H "Authorization: Bearer {{api_key}}" \ --data-raw '{ "venues": [ "60e5a3edfc8747ddfe1c10da", "60e5a3ed45f889c669110306", "60e5a3ed2db1dd4b81db45d4" ] }' ``` #### Example Response: ```json { "venues": [ "60e5a3edfc8747ddfe1c10da", "60e5a3ed45f889c669110306", "60e5a3ed2db1dd4b81db45d4" ] } ```